From 24ad3ed71fe93059d1b46ffdbfe63259762bf547 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 7 Apr 2010 18:03:19 +0000 Subject: 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 --- test/CodeGen/X86/crash.ll | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'test/CodeGen/X86/crash.ll') 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} -- cgit v1.2.3