diff options
author | Chris Lattner <sabre@nondot.org> | 2009-08-02 05:20:37 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-08-02 05:20:37 +0000 |
commit | 5f1fdb3d639bc0300b5a40f1a1c62178fb534668 (patch) | |
tree | 2265d4015a9ba0966c2bd58c8535a3d0f59bc4cd /include/llvm | |
parent | 1a6ef24f529090bc30e974ae536f25a26643e3b7 (diff) | |
download | external_llvm-5f1fdb3d639bc0300b5a40f1a1c62178fb534668.zip external_llvm-5f1fdb3d639bc0300b5a40f1a1c62178fb534668.tar.gz external_llvm-5f1fdb3d639bc0300b5a40f1a1c62178fb534668.tar.bz2 |
Move the getInlineAsmLength virtual method from TAI to TII, where
the only real caller (GetFunctionSizeInBytes) uses it.
The custom ARM implementation of this is basically reimplementing
an assembler poorly for negligible gain. It should be removed
IMNSHO, but I'll leave that to ARMish folks to decide.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77877 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r-- | include/llvm/Target/TargetAsmInfo.h | 7 | ||||
-rw-r--r-- | include/llvm/Target/TargetInstrInfo.h | 9 |
2 files changed, 11 insertions, 5 deletions
diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index 9d37d49..75b3bdf 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -375,10 +375,6 @@ namespace llvm { explicit TargetAsmInfo(); virtual ~TargetAsmInfo(); - /// Measure the specified inline asm to determine an approximation of its - /// length. - virtual unsigned getInlineAsmLength(const char *Str) const; - /// getSLEB128Size - Compute the number of bytes required for a signed /// leb128 value. static unsigned getSLEB128Size(int Value); @@ -414,6 +410,9 @@ namespace llvm { bool needsSet() const { return NeedsSet; } + unsigned getMaxInstLength() const { + return MaxInstLength; + } const char *getPCSymbol() const { return PCSymbol; } diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h index 41a344d..53d994d 100644 --- a/include/llvm/Target/TargetInstrInfo.h +++ b/include/llvm/Target/TargetInstrInfo.h @@ -19,6 +19,7 @@ namespace llvm { +class TargetAsmInfo; class TargetRegisterClass; class TargetRegisterInfo; class LiveVariables; @@ -456,9 +457,15 @@ public: return 0; } - /// GetFunctionSizeInBytes - Returns the size of the specified MachineFunction. + /// GetFunctionSizeInBytes - Returns the size of the specified + /// MachineFunction. /// virtual unsigned GetFunctionSizeInBytes(const MachineFunction &MF) const = 0; + + /// Measure the specified inline asm to determine an approximation of its + /// length. + virtual unsigned getInlineAsmLength(const char *Str, + const TargetAsmInfo &TAI) const; }; /// TargetInstrInfoImpl - This is the default implementation of |