1; RUN: llc < %s -march=x86 | grep sar | count 1 2; RUN: llc < %s -march=x86-64 | not grep sar 3 4define i32 @test(i32 %f12) nounwind { 5 %tmp7.25 = lshr i32 %f12, 16 6 %tmp7.26 = trunc i32 %tmp7.25 to i8 7 %tmp78.2 = sext i8 %tmp7.26 to i32 8 ret i32 %tmp78.2 9} 10 11define i32 @test2(i32 %f12) nounwind { 12 %f11 = shl i32 %f12, 8 13 %tmp7.25 = ashr i32 %f11, 24 14 ret i32 %tmp7.25 15} 16 17define i32 @test3(i32 %f12) nounwind { 18 %f11 = shl i32 %f12, 13 19 %tmp7.25 = ashr i32 %f11, 24 20 ret i32 %tmp7.25 21} 22 23define i64 @test4(i64 %f12) nounwind { 24 %f11 = shl i64 %f12, 32 25 %tmp7.25 = ashr i64 %f11, 32 26 ret i64 %tmp7.25 27} 28 29define i16 @test5(i16 %f12) nounwind { 30 %f11 = shl i16 %f12, 2 31 %tmp7.25 = ashr i16 %f11, 8 32 ret i16 %tmp7.25 33} 34 35define i16 @test6(i16 %f12) nounwind { 36 %f11 = shl i16 %f12, 8 37 %tmp7.25 = ashr i16 %f11, 8 38 ret i16 %tmp7.25 39} 40