diff options
author | Evan Cheng <evan.cheng@apple.com> | 2006-12-05 19:50:18 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2006-12-05 19:50:18 +0000 |
commit | 28b51439f3b99bac332f32778ef26d000dc85301 (patch) | |
tree | c82d851ab39889984f951fdeb012fbaa079bb033 /lib/Target/X86/X86InstrX86-64.td | |
parent | f2d9ceb5b9dfbd5e50607bab4a87c1244bda0a71 (diff) | |
download | llvm-28b51439f3b99bac332f32778ef26d000dc85301.tar.gz llvm-28b51439f3b99bac332f32778ef26d000dc85301.tar.bz2 llvm-28b51439f3b99bac332f32778ef26d000dc85301.tar.xz |
- Switch X86-64 JIT to large code size model.
- Re-enable some codegen niceties for X86-64 static relocation model codegen.
- Clean ups, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32238 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrX86-64.td')
-rw-r--r-- | lib/Target/X86/X86InstrX86-64.td | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/lib/Target/X86/X86InstrX86-64.td b/lib/Target/X86/X86InstrX86-64.td index 663e5f3442..ce5283d50b 100644 --- a/lib/Target/X86/X86InstrX86-64.td +++ b/lib/Target/X86/X86InstrX86-64.td @@ -1031,12 +1031,18 @@ def : Pat<(i64 (X86Wrapper tglobaladdr :$dst)), def : Pat<(i64 (X86Wrapper texternalsym:$dst)), (MOV64ri texternalsym:$dst)>, Requires<[NotSmallCode]>; -/* +def : Pat<(store (i64 (X86Wrapper tconstpool:$src)), addr:$dst), + (MOV64mi32 addr:$dst, tconstpool:$src)>, + Requires<[SmallCode, IsStatic]>; +def : Pat<(store (i64 (X86Wrapper tjumptable:$src)), addr:$dst), + (MOV64mi32 addr:$dst, tjumptable:$src)>, + Requires<[SmallCode, IsStatic]>; def : Pat<(store (i64 (X86Wrapper tglobaladdr:$src)), addr:$dst), - (MOV64mi32 addr:$dst, tglobaladdr:$src)>, Requires<[SmallCode]>; + (MOV64mi32 addr:$dst, tglobaladdr:$src)>, + Requires<[SmallCode, IsStatic]>; def : Pat<(store (i64 (X86Wrapper texternalsym:$src)), addr:$dst), - (MOV64mi32 addr:$dst, texternalsym:$src)>, Requires<[SmallCode]>; -*/ + (MOV64mi32 addr:$dst, texternalsym:$src)>, + Requires<[SmallCode, IsStatic]>; // Calls // Direct PC relative function call for small code model. 32-bit displacement |