[WebAssembly][NFC] simplify SjLj inline assembly test
authorGuanzhong Chen <gzchen@google.com>
Wed, 3 Jul 2019 22:11:14 +0000 (22:11 +0000)
committerGuanzhong Chen <gzchen@google.com>
Wed, 3 Jul 2019 22:11:14 +0000 (22:11 +0000)
Summary:
Per feedback in D64115, simplify the test.

`hidden` is left in though, because every test in the file has it.

Reviewers: aheejin, tlively

Subscribers: dschuff, sbc100, jgravelle-google, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64117

llvm-svn: 365089

llvm/test/CodeGen/WebAssembly/lower-em-sjlj.ll

index e334092..b65af14 100644 (file)
@@ -189,23 +189,17 @@ entry:
 }
 
 ; Test inline asm handling
-define hidden void @inline_asm() #0 {
+define hidden void @inline_asm() {
 ; CHECK-LABEL: @inline_asm
 entry:
   %env = alloca [1 x %struct.__jmp_buf_tag], align 16
   %arraydecay = getelementptr inbounds [1 x %struct.__jmp_buf_tag], [1 x %struct.__jmp_buf_tag]* %env, i32 0, i32 0
   %call = call i32 @setjmp(%struct.__jmp_buf_tag* %arraydecay) #4
-  %cmp = icmp eq i32 %call, 0
-  br i1 %cmp, label %if.then, label %if.else
-
-if.then:                                          ; preds = %entry
+; Inline assembly should not generate __invoke wrappers.
+; Doing so would fail as inline assembly cannot be passed as a function pointer.
 ; CHECK: call void asm sideeffect "", ""()
+; CHECK-NOT: __invoke_void
   call void asm sideeffect "", ""()
-  %arraydecay1 = getelementptr inbounds [1 x %struct.__jmp_buf_tag], [1 x %struct.__jmp_buf_tag]* %env, i32 0, i32 0
-  call void @longjmp(%struct.__jmp_buf_tag* %arraydecay1, i32 1) #5
-  unreachable
-
-if.else:                                          ; preds = %entry
   ret void
 }