diff options
author | Evan Cheng <evan.cheng@apple.com> | 2009-07-08 21:03:57 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2009-07-08 21:03:57 +0000 |
commit | e3a53c448b31f7dcdcd624a769d30440bbed2052 (patch) | |
tree | e99be1335c1b248ed18f39125dde84935b6758e2 /llvm/lib/Target/ARM/ARMAddressingModes.h | |
parent | 0c9f367d62e202f91bcce766867ac71b2e22ff12 (diff) | |
download | bcm5719-llvm-e3a53c448b31f7dcdcd624a769d30440bbed2052.tar.gz bcm5719-llvm-e3a53c448b31f7dcdcd624a769d30440bbed2052.zip |
Change how so_imm and t2_so_imm are handled. At instruction selection time, the immediates are no longer encoded in the imm8 + rot format, that are left as it is. The encoding is now done in ams printing and code emission time instead.
llvm-svn: 75048
Diffstat (limited to 'llvm/lib/Target/ARM/ARMAddressingModes.h')
-rw-r--r-- | llvm/lib/Target/ARM/ARMAddressingModes.h | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/llvm/lib/Target/ARM/ARMAddressingModes.h b/llvm/lib/Target/ARM/ARMAddressingModes.h index 15c9ec1fc23..6b90b73d13d 100644 --- a/llvm/lib/Target/ARM/ARMAddressingModes.h +++ b/llvm/lib/Target/ARM/ARMAddressingModes.h @@ -273,29 +273,6 @@ namespace ARM_AM { return V >> getThumbImmValShift(V); } - /// getT2SOImmValDecode - Given a 12-bit encoded Thumb-2 modified immediate, - /// return the corresponding 32-bit immediate value. - /// See ARM Reference Manual A6.3.2. - static inline unsigned getT2SOImmValDecode(unsigned Imm) { - unsigned Base = Imm & 0xff; - switch ((Imm >> 8) & 0xf) { - case 0: - return Base; - case 1: - return Base | (Base << 16); - case 2: - return (Base << 8) | (Base << 24); - case 3: - return Base | (Base << 8) | (Base << 16) | (Base << 24); - default: - break; - } - - // shifted immediate - unsigned RotAmount = ((Imm >> 7) & 0x1f) - 8; - return (Base | 0x80) << (24 - RotAmount); - } - /// getT2SOImmValSplat - Return the 12-bit encoded representation /// if the specified value can be obtained by splatting the low 8 bits /// into every other byte or every byte of a 32-bit value. i.e., |