4 pub fn trap_panic(bcx: &mut FunctionBuilder) {
5 bcx.ins().trap(TrapCode::User(0));
8 /// Trap code: user65535
9 pub fn trap_unreachable(bcx: &mut FunctionBuilder) {
10 bcx.ins().trap(TrapCode::User(!0));
13 pub fn trap_unreachable_ret_value<'tcx>(fx: &mut FunctionCx<'_, 'tcx, impl cranelift_module::Backend>, dest_layout: TyLayout<'tcx>) -> CValue<'tcx> {
14 let true_ = fx.bcx.ins().iconst(types::I32, 1);
15 fx.bcx.ins().trapnz(true_, TrapCode::User(!0));
16 let zero = fx.bcx.ins().iconst(fx.pointer_type, 0);
17 CValue::ByRef(zero, dest_layout)