brintos

brintos / llvm-project-archived public Read only

0
0
Text · 894 B · 8994765 Raw
28 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2;RUN: opt -passes=instcombine -S %s | FileCheck %s3 4define i8 @fast_div_201(i8 %p) {5; CHECK-LABEL: @fast_div_201(6; CHECK-NEXT:  entry:7; CHECK-NEXT:    [[V3:%.*]] = zext i8 [[P:%.*]] to i168; CHECK-NEXT:    [[V4:%.*]] = mul nuw nsw i16 [[V3]], 719; CHECK-NEXT:    [[V5:%.*]] = lshr i16 [[V4]], 810; CHECK-NEXT:    [[V6:%.*]] = trunc nuw nsw i16 [[V5]] to i811; CHECK-NEXT:    [[V7:%.*]] = sub i8 [[P]], [[V6]]12; CHECK-NEXT:    [[V8:%.*]] = lshr i8 [[V7]], 113; CHECK-NEXT:    [[V13:%.*]] = add nuw i8 [[V8]], [[V6]]14; CHECK-NEXT:    [[V14:%.*]] = lshr i8 [[V13]], 715; CHECK-NEXT:    ret i8 [[V14]]16;17entry:18  %v3 = zext i8 %p to i1619  %v4 = mul i16 %v3, 7120  %v5 = lshr i16 %v4, 821  %v6 = trunc i16 %v5 to i822  %v7 = sub i8 %p, %v623  %v8 = lshr i8 %v7, 124  %v13 = add i8 %v6, %v825  %v14 = lshr i8 %v13, 726  ret i8 %v1427}28