diff options
author | Bob Wilson <bob.wilson@apple.com> | 2010-02-10 22:58:57 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@apple.com> | 2010-02-10 22:58:57 +0000 |
commit | 5e2b05a71e81b28712b77419f68657462494e103 (patch) | |
tree | 8029ae1969d5fb607781fba7e98b005022475af7 /test/CodeGen/X86/2007-10-05-3AddrConvert.ll | |
parent | b8ff934e94637462901ebd1c849aeaf71350dacc (diff) | |
download | external_llvm-5e2b05a71e81b28712b77419f68657462494e103.zip external_llvm-5e2b05a71e81b28712b77419f68657462494e103.tar.gz external_llvm-5e2b05a71e81b28712b77419f68657462494e103.tar.bz2 |
Delete dead PHI machine instructions. These can be created due to type
legalization even when the IR-level optimizer has removed dead phis, such
as when the high half of an i64 value is unused on a 32-bit target.
I had to adjust a few test cases that had dead phis.
This is a partial fix for Radar 7627077.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95816 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/2007-10-05-3AddrConvert.ll')
-rw-r--r-- | test/CodeGen/X86/2007-10-05-3AddrConvert.ll | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/test/CodeGen/X86/2007-10-05-3AddrConvert.ll b/test/CodeGen/X86/2007-10-05-3AddrConvert.ll index 67323e8..2c2706d 100644 --- a/test/CodeGen/X86/2007-10-05-3AddrConvert.ll +++ b/test/CodeGen/X86/2007-10-05-3AddrConvert.ll @@ -36,7 +36,9 @@ bb.i6.i: ; preds = %bb.i6.i, %stepsystem.exit.i bb107.i.i: ; preds = %bb107.i.i, %bb.i6.i %q_addr.0.i.i.in = phi %struct.bnode** [ null, %bb107.i.i ], [ %4, %bb.i6.i ] ; <%struct.bnode**> [#uses=1] - %q_addr.0.i.i = load %struct.bnode** %q_addr.0.i.i.in ; <%struct.bnode*> [#uses=0] + %q_addr.0.i.i = load %struct.bnode** %q_addr.0.i.i.in ; <%struct.bnode*> [#uses=1] + %q_addr.1 = getelementptr %struct.anon* %0, i32 0, i32 4, i32 1 + store %struct.bnode* %q_addr.0.i.i, %struct.bnode** %q_addr.1, align 4 br label %bb107.i.i bb47.loopexit.i: ; preds = %bb32.i |