//! Regression test for #142519 //@ only-x86_64 //@ compile-flags: -O //@ min-llvm-version: 22 #![crate_type = "lib"] // CHECK-LABEL: @mul3 // CHECK: phi <4 x i8> // CHECK: load <4 x i8> // CHECK: add <4 x i8> // CHECK: store <4 x i8> #[no_mangle] pub fn mul3(previous: &[[u8; 4]], current: &mut [[u8; 4]]) { let mut c_bpp = [0u8; 4]; for i in 0..previous.len() { current[i][0] = current[i][0].wrapping_add(c_bpp[0]); current[i][1] = current[i][1].wrapping_add(c_bpp[1]); current[i][2] = current[i][2].wrapping_add(c_bpp[2]); current[i][3] = current[i][3].wrapping_add(c_bpp[3]); c_bpp = previous[i]; } }