diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-10-27 17:41:27 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-10-27 17:41:27 +0000 |
commit | 163f67f4d98aab114cb9b04efd086f54f7688d0c (patch) | |
tree | aa36f1d6e9768bd4ec76efa4507eefc63c009944 /test/CodeGen/X86/crash.ll | |
parent | badffcf8fddf3978acf9843a43e66766e9e830c6 (diff) | |
download | external_llvm-163f67f4d98aab114cb9b04efd086f54f7688d0c.zip external_llvm-163f67f4d98aab114cb9b04efd086f54f7688d0c.tar.gz external_llvm-163f67f4d98aab114cb9b04efd086f54f7688d0c.tar.bz2 |
Never attempt to join an early-clobber def with a regular kill.
This fixes PR14194.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166880 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/crash.ll')
-rw-r--r-- | test/CodeGen/X86/crash.ll | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/test/CodeGen/X86/crash.ll b/test/CodeGen/X86/crash.ll index 3eb7b37..276d0db 100644 --- a/test/CodeGen/X86/crash.ll +++ b/test/CodeGen/X86/crash.ll @@ -580,3 +580,12 @@ bb28: ; preds = %bb21 bb29: ; preds = %bb28, %bb26, %bb25, %bb21 unreachable } + +define void @pr14194() nounwind uwtable { + %tmp = load i64* undef, align 16 + %tmp1 = trunc i64 %tmp to i32 + %tmp2 = lshr i64 %tmp, 32 + %tmp3 = trunc i64 %tmp2 to i32 + %tmp4 = call { i32, i32 } asm sideeffect "", "=&r,=&r,r,r,0,1,~{dirflag},~{fpsr},~{flags}"(i32 %tmp3, i32 undef, i32 %tmp3, i32 %tmp1) nounwind + ret void +} |