| - // MIR for `mutate_discriminant` before JumpThreading |
| + // MIR for `mutate_discriminant` after JumpThreading |
| |
| fn mutate_discriminant() -> u8 { |
| let mut _0: u8; |
| let mut _1: std::option::Option<NonZeroUsize>; |
| let mut _2: (usize) is 1..; |
| let mut _3: isize; |
| |
| bb0: { |
| discriminant(_1) = 1; |
| _2 = const 0_usize as (usize) is 1.. (Transmute); |
| (((_1 as variant#1).0: NonZeroUsize).0: (usize) is 1..=usize::MAX) = copy _2; |
| _3 = discriminant(_1); |
| switchInt(copy _3) -> [0: bb1, otherwise: bb2]; |
| } |
| |
| bb1: { |
| _0 = const 1_u8; |
| return; |
| } |
| |
| bb2: { |
| _0 = const 2_u8; |
| unreachable; |
| } |
| } |
| |