- // MIR for `repeat` before GVN + // MIR for `repeat` after GVN fn repeat() -> () { let mut _0: (); let _1: i32; let mut _3: i32; let mut _4: i32; let mut _5: i32; let mut _6: i32; let mut _7: i32; let mut _8: i32; let mut _9: i32; let mut _10: i32; let mut _11: i32; let mut _12: i32; scope 1 { debug val => _1; let _2: [i32; 10]; scope 2 { debug array => _2; } } bb0: { - StorageLive(_1); + nop; _1 = const 5_i32; StorageLive(_2); StorageLive(_3); - _3 = copy _1; + _3 = const 5_i32; StorageLive(_4); - _4 = copy _1; + _4 = const 5_i32; StorageLive(_5); - _5 = copy _1; + _5 = const 5_i32; StorageLive(_6); - _6 = copy _1; + _6 = const 5_i32; StorageLive(_7); - _7 = copy _1; + _7 = const 5_i32; StorageLive(_8); - _8 = copy _1; + _8 = const 5_i32; StorageLive(_9); - _9 = copy _1; + _9 = const 5_i32; StorageLive(_10); - _10 = copy _1; + _10 = const 5_i32; StorageLive(_11); - _11 = copy _1; + _11 = const 5_i32; StorageLive(_12); - _12 = copy _1; - _2 = [move _3, move _4, move _5, move _6, move _7, move _8, move _9, move _10, move _11, move _12]; + _12 = const 5_i32; + _2 = [const 5_i32; 10]; StorageDead(_12); StorageDead(_11); StorageDead(_10); StorageDead(_9); StorageDead(_8); StorageDead(_7); StorageDead(_6); StorageDead(_5); StorageDead(_4); StorageDead(_3); _0 = const (); StorageDead(_2); - StorageDead(_1); + nop; return; } }