[Bitcode] Add additional callbr tests (NFC)
authorNikita Popov <npopov@redhat.com>
Mon, 11 Jul 2022 14:45:29 +0000 (16:45 +0200)
committerNikita Popov <npopov@redhat.com>
Mon, 11 Jul 2022 14:46:21 +0000 (16:46 +0200)
Additional coverage for the auto-upgrade code in D129288.

llvm/test/Bitcode/callbr.ll
llvm/test/Bitcode/callbr.ll.bc

index f35f219..d7f413e 100644 (file)
@@ -15,3 +15,31 @@ normal:
 fail:
   ret i32 0
 }
+
+define i32 @test_asm_goto2(i32 %x){
+entry:
+; CHECK-TYPED:      callbr void asm "", "r,i,i"(i32 %x, i8* blockaddress(@test_asm_goto2, %fail), i8* blockaddress(@test_asm_goto2, %fail2))
+; CHECK-OPAQUE:     callbr void asm "", "r,i,i"(i32 %x, ptr blockaddress(@test_asm_goto2, %fail), ptr blockaddress(@test_asm_goto2, %fail2))
+; CHECK-NEXT: to label %normal [label %fail, label %fail2]
+  callbr void asm "", "r,i,i"(i32 %x, i8* blockaddress(@test_asm_goto2, %fail), i8* blockaddress(@test_asm_goto2, %fail2)) to label %normal [label %fail, label %fail2]
+normal:
+  ret i32 1
+fail:
+  ret i32 0
+fail2:
+  ret i32 2
+}
+
+define i32 @test_asm_goto3(i32 %x){
+entry:
+; CHECK-TYPED:      callbr void asm "", "r,i,i"(i32 %x, i8* blockaddress(@test_asm_goto3, %unrelated), i8* blockaddress(@test_asm_goto3, %fail))
+; CHECK-OPAQUE:     callbr void asm "", "r,i,i"(i32 %x, ptr blockaddress(@test_asm_goto3, %unrelated), ptr blockaddress(@test_asm_goto3, %fail))
+; CHECK-NEXT: to label %normal [label %fail]
+  callbr void asm "", "r,i,i"(i32 %x, i8* blockaddress(@test_asm_goto3, %unrelated), i8* blockaddress(@test_asm_goto3, %fail)) to label %normal [label %fail]
+normal:
+  ret i32 1
+fail:
+  ret i32 0
+unrelated:
+  ret i32 2
+}
index 8827de6..bc611b1 100644 (file)
Binary files a/llvm/test/Bitcode/callbr.ll.bc and b/llvm/test/Bitcode/callbr.ll.bc differ