aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMSubtarget.h
diff options
context:
space:
mode:
authorDerek Schuff <dschuff@chromium.org>2012-07-09 10:52:46 -0700
committerDerek Schuff <dschuff@chromium.org>2012-07-09 11:00:37 -0700
commit5dbcc7e0c9c12f4a4042fb4a226654aee927999c (patch)
treeb316a3370e9286cb4e6f81b2f9d8bd8b54ce5123 /lib/Target/ARM/ARMSubtarget.h
parent86dc97be9ac3b4804528e087b04b4f4192cdee54 (diff)
LOCALMODs from hg 0b098ca44de7 against r158408 (hg 90a87d6bfe45)
(only non-new files; new files in git 4f429c8b) Change-Id: Ia39f818088485bd90e4d048db404f8d6ba5f836b
Diffstat (limited to 'lib/Target/ARM/ARMSubtarget.h')
-rw-r--r--lib/Target/ARM/ARMSubtarget.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMSubtarget.h b/lib/Target/ARM/ARMSubtarget.h
index e72b06fa3f..a83f4e57cf 100644
--- a/lib/Target/ARM/ARMSubtarget.h
+++ b/lib/Target/ARM/ARMSubtarget.h
@@ -23,6 +23,14 @@
#define GET_SUBTARGETINFO_HEADER
#include "ARMGenSubtargetInfo.inc"
+// @LOCALMOD-BEGIN
+#include "llvm/Support/CommandLine.h"
+namespace llvm {
+ extern cl::opt<bool> FlagSfiDisableCP;
+}
+// @LOCALMOD-END
+
+
namespace llvm {
class GlobalValue;
class StringRef;
@@ -158,6 +166,12 @@ protected:
/// Selected instruction itineraries (one entry per itinerary class.)
InstrItineraryData InstrItins;
+ // @LOCALMOD-START
+ /// UseInlineJumpTables - True if jump tables should be in-line in the code.
+ bool UseInlineJumpTables;
+ // @LOCALMOD-END
+
+
public:
enum {
isELF, isDarwin
@@ -247,6 +261,9 @@ protected:
bool useMovt() const { return UseMovt && hasV6T2Ops(); }
bool supportsTailCall() const { return SupportsTailCall; }
+ // @LOCALMOD
+ bool useConstPool() const { return !FlagSfiDisableCP; }
+
bool allowsUnalignedMem() const { return AllowsUnalignedMem; }
const std::string & getCPUString() const { return CPUString; }
@@ -270,6 +287,8 @@ protected:
/// GVIsIndirectSymbol - true if the GV will be accessed via an indirect
/// symbol.
bool GVIsIndirectSymbol(const GlobalValue *GV, Reloc::Model RelocM) const;
+
+ bool useInlineJumpTables() const {return UseInlineJumpTables;} // @LOCALMOD
};
} // End llvm namespace