[PATCH] D96824: [WebAssembly] Do not use EHCatchret symbols with wasm EH

Derek Schuff via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 17 11:05:37 PST 2021


dschuff updated this revision to Diff 324359.
dschuff added a comment.

Update existing test instead of using new one


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D96824/new/

https://reviews.llvm.org/D96824

Files:
  llvm/test/CodeGen/WebAssembly/eh-catchpad-nested.ll
  llvm/test/CodeGen/WebAssembly/exception.ll


Index: llvm/test/CodeGen/WebAssembly/exception.ll
===================================================================
--- llvm/test/CodeGen/WebAssembly/exception.ll
+++ llvm/test/CodeGen/WebAssembly/exception.ll
@@ -1,4 +1,4 @@
-; RUN: llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs | FileCheck -allow-deprecated-dag-overlap %s
+; RUN: llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs | FileCheck --implicit-check-not=ehgcr -allow-deprecated-dag-overlap %s
 ; RUN: llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs -O0 | FileCheck -allow-deprecated-dag-overlap --check-prefix=NOOPT %s
 ; RUN: llc < %s -disable-wasm-fallthrough-return-opt -wasm-keep-registers -exception-model=wasm -mattr=+exception-handling
 
Index: llvm/test/CodeGen/WebAssembly/eh-catchpad-nested.ll
===================================================================
--- llvm/test/CodeGen/WebAssembly/eh-catchpad-nested.ll
+++ /dev/null
@@ -1,35 +0,0 @@
-; RUN: llc  -disable-wasm-fallthrough-return-opt -wasm-keep-registers -exception-model=wasm -mattr=+exception-handling < %s | FileCheck %s
-
-target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
-target triple = "wasm32-unknown-unknown"
-
-declare void @personality()
-
-declare void @f()
-
-define void @test1() personality void ()* @personality {
-entry:
-  invoke void @f()
-          to label %exit unwind label %catch.dispatch.1
-exit:
-  ret void
-
-catch.dispatch.1:
-  %cs1 = catchswitch within none [label %outer.catch] unwind to caller
-
-outer.catch:
-  %cp1 = catchpad within %cs1 [i32 1]
-  invoke void @f() [ "funclet"(token %cp1) ]
-          to label %outer.ret unwind label %catch.dispatch.2
-outer.ret:
-  catchret from %cp1 to label %exit
-
-catch.dispatch.2:
-  %cs2 = catchswitch within %cp1 [label %inner.catch] unwind to caller
-inner.catch:
-  %cp2 = catchpad within %cs2 [i32 2]
-  catchret from %cp2 to label %outer.ret
-}
-
-; Check that no $ehgcr symbols are emitted
-; CHECK-NOT: $ehgcr


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D96824.324359.patch
Type: text/x-patch
Size: 2359 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210217/beed9d1c/attachment-0001.bin>


More information about the llvm-commits mailing list