[llvm-commits] [llvm] r75397 - /llvm/trunk/lib/Target/X86/X86Instr64bit.td
Chris Lattner
sabre at nondot.org
Sat Jul 11 15:47:22 PDT 2009
Author: lattner
Date: Sat Jul 11 17:47:21 2009
New Revision: 75397
URL: http://llvm.org/viewvc/llvm-project?rev=75397&view=rev
Log:
remove some dead patterns, WrapperRIP doesn't exist in -static mode
anymore, so these aren't needed.
Modified:
llvm/trunk/lib/Target/X86/X86Instr64bit.td
Modified: llvm/trunk/lib/Target/X86/X86Instr64bit.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Instr64bit.td?rev=75397&r1=75396&r2=75397&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86Instr64bit.td (original)
+++ llvm/trunk/lib/Target/X86/X86Instr64bit.td Sat Jul 11 17:47:21 2009
@@ -1435,23 +1435,6 @@
(MOV64mi32 addr:$dst, texternalsym:$src)>,
Requires<[SmallCode, IsStatic]>;
-// If we have small model and -static mode, it is safe to store global addresses
-// directly as immediates. FIXME: This is really a hack, the 'imm' predicate
-// should handle this sort of thing.
-def : Pat<(store (i64 (X86WrapperRIP tconstpool:$src)), addr:$dst),
- (MOV64mi32 addr:$dst, tconstpool:$src)>,
- Requires<[SmallCode, IsStatic]>;
-def : Pat<(store (i64 (X86WrapperRIP tjumptable:$src)), addr:$dst),
- (MOV64mi32 addr:$dst, tjumptable:$src)>,
- Requires<[SmallCode, IsStatic]>;
-def : Pat<(store (i64 (X86WrapperRIP tglobaladdr:$src)), addr:$dst),
- (MOV64mi32 addr:$dst, tglobaladdr:$src)>,
- Requires<[SmallCode, IsStatic]>;
-def : Pat<(store (i64 (X86WrapperRIP texternalsym:$src)), addr:$dst),
- (MOV64mi32 addr:$dst, texternalsym:$src)>,
- Requires<[SmallCode, IsStatic]>;
-
-
// Calls
// Direct PC relative function call for small code model. 32-bit displacement
// sign extended to 64-bit.
More information about the llvm-commits
mailing list