1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
; RUN: opt < %s -analyze -scalar-evolution ; PR4501 define void @test() { entry: %0 = load i16, i16* undef, align 1 %1 = lshr i16 %0, 8 %2 = and i16 %1, 3 %3 = zext i16 %2 to i32 %4 = load i8, i8* undef, align 1 %5 = lshr i8 %4, 4 %6 = and i8 %5, 1 %7 = zext i8 %6 to i32 %t1 = add i32 %3, %7 ret void }