summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/crash.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-04-07 18:03:19 +0000
committerChris Lattner <sabre@nondot.org>2010-04-07 18:03:19 +0000
commit24ad3ed71fe93059d1b46ffdbfe63259762bf547 (patch)
tree12d9796b8fed5f46d853e433a08c85df2495a353 /test/CodeGen/X86/crash.ll
parent96fbb3eea6ebcd2a6b75973cf11998b4cb0e6a81 (diff)
downloadllvm-24ad3ed71fe93059d1b46ffdbfe63259762bf547.tar.gz
llvm-24ad3ed71fe93059d1b46ffdbfe63259762bf547.tar.bz2
llvm-24ad3ed71fe93059d1b46ffdbfe63259762bf547.tar.xz
fix a latent bug my inline asm stuff exposed:
MachineOperand::isIdenticalTo wasn't handling metadata operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100636 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/crash.ll')
-rw-r--r--test/CodeGen/X86/crash.ll16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/CodeGen/X86/crash.ll b/test/CodeGen/X86/crash.ll
index 4b7c850993..312d15f6d5 100644
--- a/test/CodeGen/X86/crash.ll
+++ b/test/CodeGen/X86/crash.ll
@@ -92,3 +92,19 @@ foo:
}
+; Crash commoning identical asms.
+define void @test6(i1 %C) nounwind optsize ssp {
+entry:
+ br i1 %C, label %do.body55, label %do.body92
+
+do.body55: ; preds = %if.else36
+ call void asm sideeffect "foo", "~{dirflag},~{fpsr},~{flags}"() nounwind, !srcloc !0
+ ret void
+
+do.body92: ; preds = %if.then66
+ call void asm sideeffect "foo", "~{dirflag},~{fpsr},~{flags}"() nounwind, !srcloc !1
+ ret void
+}
+
+!0 = metadata !{i32 633550}
+!1 = metadata !{i32 634261}