Merge commit '3a9bf729322fb5035518f99b9d76a742bf7c124e' into sync_cg_clif-2023-12-19
This commit is contained in:
@@ -353,7 +353,7 @@ fn codegen_fn_body(fx: &mut FunctionCx<'_, '_, '_>, start_block: Block) {
|
||||
fx,
|
||||
rustc_hir::LangItem::PanicBoundsCheck,
|
||||
&[index, len, location],
|
||||
source_info.span,
|
||||
Some(source_info.span),
|
||||
);
|
||||
}
|
||||
AssertKind::MisalignedPointerDereference { ref required, ref found } => {
|
||||
@@ -365,7 +365,7 @@ fn codegen_fn_body(fx: &mut FunctionCx<'_, '_, '_>, start_block: Block) {
|
||||
fx,
|
||||
rustc_hir::LangItem::PanicMisalignedPointerDereference,
|
||||
&[required, found, location],
|
||||
source_info.span,
|
||||
Some(source_info.span),
|
||||
);
|
||||
}
|
||||
_ => {
|
||||
@@ -945,19 +945,19 @@ pub(crate) fn codegen_panic<'tcx>(
|
||||
let msg_len = fx.bcx.ins().iconst(fx.pointer_type, i64::try_from(msg_str.len()).unwrap());
|
||||
let args = [msg_ptr, msg_len, location];
|
||||
|
||||
codegen_panic_inner(fx, rustc_hir::LangItem::Panic, &args, source_info.span);
|
||||
codegen_panic_inner(fx, rustc_hir::LangItem::Panic, &args, Some(source_info.span));
|
||||
}
|
||||
|
||||
pub(crate) fn codegen_panic_nounwind<'tcx>(
|
||||
fx: &mut FunctionCx<'_, '_, 'tcx>,
|
||||
msg_str: &str,
|
||||
source_info: mir::SourceInfo,
|
||||
span: Option<Span>,
|
||||
) {
|
||||
let msg_ptr = fx.anonymous_str(msg_str);
|
||||
let msg_len = fx.bcx.ins().iconst(fx.pointer_type, i64::try_from(msg_str.len()).unwrap());
|
||||
let args = [msg_ptr, msg_len];
|
||||
|
||||
codegen_panic_inner(fx, rustc_hir::LangItem::PanicNounwind, &args, source_info.span);
|
||||
codegen_panic_inner(fx, rustc_hir::LangItem::PanicNounwind, &args, span);
|
||||
}
|
||||
|
||||
pub(crate) fn codegen_unwind_terminate<'tcx>(
|
||||
@@ -967,16 +967,16 @@ pub(crate) fn codegen_unwind_terminate<'tcx>(
|
||||
) {
|
||||
let args = [];
|
||||
|
||||
codegen_panic_inner(fx, reason.lang_item(), &args, source_info.span);
|
||||
codegen_panic_inner(fx, reason.lang_item(), &args, Some(source_info.span));
|
||||
}
|
||||
|
||||
fn codegen_panic_inner<'tcx>(
|
||||
fx: &mut FunctionCx<'_, '_, 'tcx>,
|
||||
lang_item: rustc_hir::LangItem,
|
||||
args: &[Value],
|
||||
span: Span,
|
||||
span: Option<Span>,
|
||||
) {
|
||||
let def_id = fx.tcx.require_lang_item(lang_item, Some(span));
|
||||
let def_id = fx.tcx.require_lang_item(lang_item, span);
|
||||
|
||||
let instance = Instance::mono(fx.tcx, def_id).polymorphize(fx.tcx);
|
||||
let symbol_name = fx.tcx.symbol_name(instance).name;
|
||||
|
||||
Reference in New Issue
Block a user