Skip to content

Commit 0dbe257

Browse files
committed
review updates
1 parent 9a5d454 commit 0dbe257

File tree

4 files changed

+15
-10
lines changed

4 files changed

+15
-10
lines changed

compiler/rustc_codegen_cranelift/src/base.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -823,7 +823,7 @@ fn codegen_stmt<'tcx>(
823823
StatementKind::Coverage { .. } => fx.tcx.dcx().fatal("-Zcoverage is unimplemented"),
824824
StatementKind::Intrinsic(ref intrinsic) => match &**intrinsic {
825825
// We ignore `assume` intrinsics, they are only useful for optimizations
826-
NonDivergingIntrinsic::Assume(_) => {}
826+
NonDivergingIntrinsic::Assume(_) | NonDivergingIntrinsic::Expect(..) => {}
827827
NonDivergingIntrinsic::CopyNonOverlapping(mir::CopyNonOverlapping {
828828
src,
829829
dst,

compiler/rustc_codegen_cranelift/src/constant.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,9 @@ pub(crate) fn mir_operand_get_const_val<'tcx>(
503503
}
504504
StatementKind::Intrinsic(ref intrinsic) => match **intrinsic {
505505
NonDivergingIntrinsic::CopyNonOverlapping(..) => return None,
506-
NonDivergingIntrinsic::Assume(..) => {}
506+
507+
NonDivergingIntrinsic::Assume(..)
508+
| NonDivergingIntrinsic::Expect(..) => {}
507509
},
508510
// conservative handling
509511
StatementKind::Assign(_)

compiler/rustc_codegen_gcc/src/builder.rs

+8-7
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ use rustc_codegen_ssa::traits::{
2727
BaseTypeMethods,
2828
BuilderMethods,
2929
ConstMethods,
30+
ExpectKind,
3031
LayoutTypeMethods,
3132
HasCodegen,
3233
OverflowOp,
@@ -454,26 +455,26 @@ impl<'a, 'gcc, 'tcx> BuilderMethods<'a, 'tcx> for Builder<'a, 'gcc, 'tcx> {
454455
self.llbb().end_with_conditional(None, cond, then_block, else_block)
455456
}
456457

457-
/* FIXME: implement
458458
fn cond_br_with_expect(
459459
&mut self,
460-
cond: &'ll Value,
461-
then_llbb: &'ll BasicBlock,
462-
else_llbb: &'ll BasicBlock,
463-
expect: ExpectKind,
460+
cond: RValue<'gcc>,
461+
then_block: Block<'gcc>,
462+
else_block: Block<'gcc>,
463+
_expect: ExpectKind,
464464
) {
465-
// emit expectation
465+
/*
466+
// FIXME: emit expectation
466467
match expect {
467468
ExpectKind::None => {}
468469
ExpectKind::True => self.expect(cond.immediate(), true),
469470
ExpectKind::False => self.expect(cond.immediate(), false),
470471
ExpectKind::Unpredictable => {} // FIXME
471472
}
473+
*/
472474

473475
// emit the branch instruction
474476
self.llbb().end_with_conditional(None, cond, then_block, else_block)
475477
}
476-
*/
477478

478479
fn switch(&mut self, value: RValue<'gcc>, default_block: Block<'gcc>, cases: impl ExactSizeIterator<Item = (u128, Block<'gcc>)>) {
479480
let mut gcc_cases = vec![];

src/tools/clippy/clippy_utils/src/qualify_min_const_fn.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,9 @@ fn check_statement<'tcx>(
213213
check_place(tcx, **place, span, body)
214214
},
215215

216-
StatementKind::Intrinsic(box NonDivergingIntrinsic::Assume(op)) => check_operand(tcx, op, span, body),
216+
StatementKind::Intrinsic(box NonDivergingIntrinsic::Assume(op))
217+
| StatementKind::Intrinsic(box NonDivergingIntrinsic::Expect(op, ..))
218+
=> check_operand(tcx, op, span, body),
217219

218220
StatementKind::Intrinsic(box NonDivergingIntrinsic::CopyNonOverlapping(
219221
rustc_middle::mir::CopyNonOverlapping { dst, src, count },

0 commit comments

Comments
 (0)