diff options
author | Evan Cheng <evan.cheng@apple.com> | 2009-11-20 23:31:34 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2009-11-20 23:31:34 +0000 |
commit | c26abd94877eb1e2e00de8f9f927606e37e479d8 (patch) | |
tree | 7985754b42d37164f75f08c8e4ed41b9e29107c1 /test/CodeGen | |
parent | d9e05cd22ad6214d7cf622e3e0b4082a968b13af (diff) | |
download | llvm-c26abd94877eb1e2e00de8f9f927606e37e479d8.tar.gz llvm-c26abd94877eb1e2e00de8f9f927606e37e479d8.tar.bz2 llvm-c26abd94877eb1e2e00de8f9f927606e37e479d8.tar.xz |
Enable hoisting load from constant memories.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89510 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen')
-rw-r--r-- | test/CodeGen/Thumb2/machine-licm.ll | 8 | ||||
-rw-r--r-- | test/CodeGen/X86/2009-10-08-MachineLICMBug.ll | 2 | ||||
-rw-r--r-- | test/CodeGen/X86/pic-load-remat.ll | 6 |
3 files changed, 7 insertions, 9 deletions
diff --git a/test/CodeGen/Thumb2/machine-licm.ll b/test/CodeGen/Thumb2/machine-licm.ll index 88e21551be..9ab19e9d5a 100644 --- a/test/CodeGen/Thumb2/machine-licm.ll +++ b/test/CodeGen/Thumb2/machine-licm.ll @@ -18,7 +18,9 @@ entry: bb.nph: ; preds = %entry ; CHECK: BB#1 ; CHECK: ldr.n r2, LCPI1_0 -; CHECK: ldr r{{[0-9]+}}, [r2] +; CHECK: ldr r3, [r2] +; CHECK: ldr r3, [r3] +; CHECK: ldr r2, [r2] ; CHECK: LBB1_2 ; CHECK: LCPI1_0: ; CHECK-NOT: LCPI1_1: @@ -27,7 +29,9 @@ bb.nph: ; preds = %entry ; PIC: BB#1 ; PIC: ldr.n r2, LCPI1_0 ; PIC: add r2, pc -; PIC: ldr r{{[0-9]+}}, [r2] +; PIC: ldr r3, [r2] +; PIC: ldr r3, [r3] +; PIC: ldr r2, [r2] ; PIC: LBB1_2 ; PIC: LCPI1_0: ; PIC-NOT: LCPI1_1: diff --git a/test/CodeGen/X86/2009-10-08-MachineLICMBug.ll b/test/CodeGen/X86/2009-10-08-MachineLICMBug.ll index ef10ae59ab..91c5440b27 100644 --- a/test/CodeGen/X86/2009-10-08-MachineLICMBug.ll +++ b/test/CodeGen/X86/2009-10-08-MachineLICMBug.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -mtriple=i386-apple-darwin -relocation-model=pic -stats |& grep {machine-licm} | grep 1 +; RUN: llc < %s -mtriple=i386-apple-darwin -relocation-model=pic -stats |& grep {machine-licm} | grep 2 ; rdar://7274692 %0 = type { [125 x i32] } diff --git a/test/CodeGen/X86/pic-load-remat.ll b/test/CodeGen/X86/pic-load-remat.ll index d930f76a77..77297521cd 100644 --- a/test/CodeGen/X86/pic-load-remat.ll +++ b/test/CodeGen/X86/pic-load-remat.ll @@ -1,10 +1,4 @@ ; RUN: llc < %s -mtriple=i686-apple-darwin -mattr=+sse2 -relocation-model=pic | grep psllw | grep pb -; XFAIL: * - -; This is XFAIL'd because MachineLICM is now hoisting all of the loads, and the pic -; base appears killed in the entry block when remat is making its decisions. Remat's -; simple heuristic decides against rematting because it doesn't want to extend the -; live-range of the pic base; this isn't necessarily optimal. define void @f() nounwind { entry: |