diff options
| author | Gary Guo <gary@garyguo.net> | 2023-06-07 21:00:56 +0100 |
|---|---|---|
| committer | Gary Guo <gary@garyguo.net> | 2023-06-07 21:03:51 +0100 |
| commit | d9531a0d93f63a8e67e56419e0aadf25a0edd43a (patch) | |
| tree | 0b928fb7f7d629721b25e964edddfcad8d7ab344 /compiler/rustc_mir_transform/src/check_alignment.rs | |
| parent | b2807b2bf3be9fbed9a0aadc97841c20a1ab5f79 (diff) | |
| download | rust-d9531a0d93f63a8e67e56419e0aadf25a0edd43a.tar.gz rust-d9531a0d93f63a8e67e56419e0aadf25a0edd43a.zip | |
Remove wrongly emitted `.eh_frame` in `-Cpanic=abort`
Diffstat (limited to 'compiler/rustc_mir_transform/src/check_alignment.rs')
| -rw-r--r-- | compiler/rustc_mir_transform/src/check_alignment.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/rustc_mir_transform/src/check_alignment.rs b/compiler/rustc_mir_transform/src/check_alignment.rs index 1fe8ea07892..ef64f70fdf3 100644 --- a/compiler/rustc_mir_transform/src/check_alignment.rs +++ b/compiler/rustc_mir_transform/src/check_alignment.rs @@ -9,6 +9,7 @@ use rustc_middle::mir::{ }; use rustc_middle::ty::{Ty, TyCtxt, TypeAndMut}; use rustc_session::Session; +use rustc_target::spec::PanicStrategy; pub struct CheckAlignment; @@ -236,7 +237,11 @@ fn insert_alignment_check<'tcx>( required: Operand::Copy(alignment), found: Operand::Copy(addr), }), - unwind: UnwindAction::Terminate, + unwind: if tcx.sess.panic_strategy() == PanicStrategy::Unwind { + UnwindAction::Terminate + } else { + UnwindAction::Unreachable + }, }, }); } |
