about summary refs log tree commit diff
path: root/tests/codegen/wasm_exceptions.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/codegen/wasm_exceptions.rs')
-rw-r--r--tests/codegen/wasm_exceptions.rs59
1 files changed, 0 insertions, 59 deletions
diff --git a/tests/codegen/wasm_exceptions.rs b/tests/codegen/wasm_exceptions.rs
deleted file mode 100644
index 07b8ae6e9d7..00000000000
--- a/tests/codegen/wasm_exceptions.rs
+++ /dev/null
@@ -1,59 +0,0 @@
-//@ only-wasm32
-//@ compile-flags: -C panic=unwind -Z emscripten-wasm-eh
-
-#![crate_type = "lib"]
-#![feature(core_intrinsics)]
-
-extern "C-unwind" {
-    fn may_panic();
-}
-
-extern "C" {
-    fn log_number(number: usize);
-}
-
-struct LogOnDrop;
-
-impl Drop for LogOnDrop {
-    fn drop(&mut self) {
-        unsafe {
-            log_number(0);
-        }
-    }
-}
-
-// CHECK-LABEL: @test_cleanup() {{.*}} @__gxx_wasm_personality_v0
-#[no_mangle]
-pub fn test_cleanup() {
-    let _log_on_drop = LogOnDrop;
-    unsafe {
-        may_panic();
-    }
-
-    // CHECK-NOT: call
-    // CHECK: invoke void @may_panic()
-    // CHECK: %cleanuppad = cleanuppad within none []
-}
-
-// CHECK-LABEL: @test_rtry() {{.*}} @__gxx_wasm_personality_v0
-#[no_mangle]
-pub fn test_rtry() {
-    unsafe {
-        core::intrinsics::catch_unwind(
-            |_| {
-                may_panic();
-            },
-            core::ptr::null_mut(),
-            |data, exception| {
-                log_number(data as usize);
-                log_number(exception as usize);
-            },
-        );
-    }
-
-    // CHECK-NOT: call
-    // CHECK: invoke void @may_panic()
-    // CHECK: {{.*}} = catchswitch within none [label {{.*}}] unwind to caller
-    // CHECK: {{.*}} = catchpad within {{.*}} [ptr null]
-    // CHECK: catchret
-}