aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/2006-11-17-IllegalMove.ll
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-06-24 15:04:11 +0000
committerDan Gohman <gohman@apple.com>2010-06-24 15:04:11 +0000
commit102f3851bbde16fdd826d072240731365fe6da5d (patch)
tree4b722c9415c22d1368c631fa076455e03deacab6 /test/CodeGen/X86/2006-11-17-IllegalMove.ll
parent9e4f243de7c0a41ae02c93f7209ad97935e9853d (diff)
downloadexternal_llvm-102f3851bbde16fdd826d072240731365fe6da5d.zip
external_llvm-102f3851bbde16fdd826d072240731365fe6da5d.tar.gz
external_llvm-102f3851bbde16fdd826d072240731365fe6da5d.tar.bz2
Eliminate the first have of the optimization which eliminates BRCOND
when the condition is constant. This optimization shouldn't be necessary, because codegen shouldn't be able to find dead control paths that the IR-level optimizer can't find. And it's undesirable, because it encourages bugpoint to leave "br i1 false" branches in its output. And it wasn't updating the CFG. I updated all the tests I could, but some tests are too reduced and I wasn't able to meaningfully preserve them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106748 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/2006-11-17-IllegalMove.ll')
-rw-r--r--test/CodeGen/X86/2006-11-17-IllegalMove.ll6
1 files changed, 3 insertions, 3 deletions
diff --git a/test/CodeGen/X86/2006-11-17-IllegalMove.ll b/test/CodeGen/X86/2006-11-17-IllegalMove.ll
index e839d72..affb7af 100644
--- a/test/CodeGen/X86/2006-11-17-IllegalMove.ll
+++ b/test/CodeGen/X86/2006-11-17-IllegalMove.ll
@@ -15,14 +15,14 @@ bb77: ; preds = %entry, %entry
%tmp99 = udiv i64 0, 0 ; <i64> [#uses=1]
%tmp = load i8* null ; <i8> [#uses=1]
%tmp114 = icmp eq i64 0, 0 ; <i1> [#uses=1]
- br i1 %tmp114, label %cond_true115, label %cond_next136
+ br label %cond_true115
bb84: ; preds = %entry
ret void
cond_true115: ; preds = %bb77
%tmp118 = load i8* null ; <i8> [#uses=1]
- br i1 false, label %cond_next129, label %cond_true120
+ br label %cond_true120
cond_true120: ; preds = %cond_true115
%tmp127 = udiv i8 %tmp, %tmp118 ; <i8> [#uses=1]
@@ -30,7 +30,7 @@ cond_true120: ; preds = %cond_true115
br label %cond_next129
cond_next129: ; preds = %cond_true120, %cond_true115
- %iftmp.30.0 = phi i64 [ %tmp127.upgrd.1, %cond_true120 ], [ 0, %cond_true115 ] ; <i64> [#uses=1]
+ %iftmp.30.0 = phi i64 [ %tmp127.upgrd.1, %cond_true120 ] ; <i64> [#uses=1]
%tmp132 = icmp eq i64 %iftmp.30.0, %tmp99 ; <i1> [#uses=1]
br i1 %tmp132, label %cond_false148, label %cond_next136