From 218caa410aa38c29984be31a5229b9fa717560ee Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:19:13 +0200 Subject: Merging upstream version 1.68.2+dfsg1. Signed-off-by: Daniel Baumann --- src/test/codegen/drop.rs | 36 ------------------------------------ 1 file changed, 36 deletions(-) delete mode 100644 src/test/codegen/drop.rs (limited to 'src/test/codegen/drop.rs') diff --git a/src/test/codegen/drop.rs b/src/test/codegen/drop.rs deleted file mode 100644 index 994028271..000000000 --- a/src/test/codegen/drop.rs +++ /dev/null @@ -1,36 +0,0 @@ -// ignore-wasm32-bare compiled with panic=abort by default -// compile-flags: -C no-prepopulate-passes - -#![crate_type = "lib"] - -struct SomeUniqueName; - -impl Drop for SomeUniqueName { - fn drop(&mut self) { - } -} - -pub fn possibly_unwinding() { -} - -// CHECK-LABEL: @droppy -#[no_mangle] -pub fn droppy() { -// Check that there are exactly 6 drop calls. The cleanups for the unwinding should be reused, so -// that's one new drop call per call to possibly_unwinding(), and finally 3 drop calls for the -// regular function exit. We used to have problems with quadratic growths of drop calls in such -// functions. -// FIXME(eddyb) the `void @` forces a match on the instruction, instead of the -// comment, that's `; call core::ptr::drop_in_place::` -// for the `v0` mangling, should switch to matching on that once `legacy` is gone. -// CHECK-COUNT-6: {{(call|invoke) void @.*}}drop_in_place{{.*}}SomeUniqueName -// CHECK-NOT: {{(call|invoke) void @.*}}drop_in_place{{.*}}SomeUniqueName -// The next line checks for the } that ends the function definition -// CHECK-LABEL: {{^[}]}} - let _s = SomeUniqueName; - possibly_unwinding(); - let _s = SomeUniqueName; - possibly_unwinding(); - let _s = SomeUniqueName; - possibly_unwinding(); -} -- cgit v1.2.3