mirror of
https://github.com/rust-lang/rust.git
synced 2025-09-28 21:55:31 +00:00
53 lines
1.3 KiB
Rust
53 lines
1.3 KiB
Rust
// MIR for `<impl at $DIR/derived_ord_debug.rs:6:10: 6:20>::partial_cmp` after PreCodegen
|
|
|
|
fn <impl at $DIR/derived_ord_debug.rs:6:10: 6:20>::partial_cmp(_1: &MultiField, _2: &MultiField) -> Option<std::cmp::Ordering> {
|
|
debug self => _1;
|
|
debug other => _2;
|
|
let mut _0: std::option::Option<std::cmp::Ordering>;
|
|
let _3: &char;
|
|
let _4: &char;
|
|
let mut _5: std::option::Option<std::cmp::Ordering>;
|
|
let mut _6: isize;
|
|
let mut _7: i8;
|
|
let _8: &i16;
|
|
let _9: &i16;
|
|
scope 1 {
|
|
debug cmp => _5;
|
|
}
|
|
|
|
bb0: {
|
|
_3 = &((*_1).0: char);
|
|
_4 = &((*_2).0: char);
|
|
_5 = <char as PartialOrd>::partial_cmp(copy _3, copy _4) -> [return: bb1, unwind unreachable];
|
|
}
|
|
|
|
bb1: {
|
|
_6 = discriminant(_5);
|
|
switchInt(move _6) -> [1: bb2, 0: bb4, otherwise: bb6];
|
|
}
|
|
|
|
bb2: {
|
|
_7 = discriminant(((_5 as Some).0: std::cmp::Ordering));
|
|
switchInt(move _7) -> [0: bb3, otherwise: bb4];
|
|
}
|
|
|
|
bb3: {
|
|
_8 = &((*_1).1: i16);
|
|
_9 = &((*_2).1: i16);
|
|
_0 = <i16 as PartialOrd>::partial_cmp(copy _8, copy _9) -> [return: bb5, unwind unreachable];
|
|
}
|
|
|
|
bb4: {
|
|
_0 = copy _5;
|
|
goto -> bb5;
|
|
}
|
|
|
|
bb5: {
|
|
return;
|
|
}
|
|
|
|
bb6: {
|
|
unreachable;
|
|
}
|
|
}
|