diff options
author | Evan Cheng <evan.cheng@apple.com> | 2011-11-10 07:43:16 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2011-11-10 07:43:16 +0000 |
commit | 623a7e146bd86747dc46a6f8bb9993fc217d6b78 (patch) | |
tree | 72b44ba84e3cb347279c411ac8b159e6fecaf9b0 /test/CodeGen/X86/change-compare-stride-1.ll | |
parent | 4dbe96e22ff4989577cf4854f717b9d972094f87 (diff) | |
download | external_llvm-623a7e146bd86747dc46a6f8bb9993fc217d6b78.zip external_llvm-623a7e146bd86747dc46a6f8bb9993fc217d6b78.tar.gz external_llvm-623a7e146bd86747dc46a6f8bb9993fc217d6b78.tar.bz2 |
Use a bigger hammer to fix PR11314 by disabling the "forcing two-address
instruction lower optimization" in the pre-RA scheduler.
The optimization, rather the hack, was done before MI use-list was available.
Now we should be able to implement it in a better way, perhaps in the
two-address pass until a MI scheduler is available.
Now that the scheduler has to backtrack to handle call sequences. Adding
artificial scheduling constraints is just not safe. Furthermore, the hack
is not taking all the other scheduling decisions into consideration so it's just
as likely to pessimize code. So I view disabling this optimization goodness
regardless of PR11314.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144267 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/change-compare-stride-1.ll')
-rw-r--r-- | test/CodeGen/X86/change-compare-stride-1.ll | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/test/CodeGen/X86/change-compare-stride-1.ll b/test/CodeGen/X86/change-compare-stride-1.ll index 8b53ae2..1c5c113 100644 --- a/test/CodeGen/X86/change-compare-stride-1.ll +++ b/test/CodeGen/X86/change-compare-stride-1.ll @@ -3,6 +3,10 @@ ; Nested LSR is required to optimize this case. ; We do not expect to see this form of IR without -enable-iv-rewrite. +; xfailed for now because the scheduler two-address hack has been disabled. +; Now it's generating a leal -1 rather than a decq. +; XFAIL: * + define void @borf(i8* nocapture %in, i8* nocapture %out) nounwind { ; CHECK: borf: ; CHECK-NOT: inc |