36 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown %s | FileCheck %s3 4define i32 @test(ptr %isec, float %0) {5; CHECK-LABEL: @test(6; CHECK-NEXT: entry:7; CHECK-NEXT: [[TMP1:%.*]] = load float, ptr [[ISEC:%.*]], align 48; CHECK-NEXT: [[ARRAYIDX10:%.*]] = getelementptr inbounds float, ptr [[ISEC]], i64 19; CHECK-NEXT: [[TMP2:%.*]] = load float, ptr [[ARRAYIDX10]], align 410; CHECK-NEXT: [[TMP5:%.*]] = fmul fast float [[TMP0:%.*]], [[TMP2]]11; CHECK-NEXT: [[TMP4:%.*]] = fmul fast float 0.000000e+00, [[TMP1]]12; CHECK-NEXT: [[CMP61:%.*]] = fcmp fast oge float 0.000000e+00, 0.000000e+0013; CHECK-NEXT: [[CMP63:%.*]] = fcmp fast ogt float [[TMP4]], [[TMP5]]14; CHECK-NEXT: br i1 [[CMP63]], label [[CLEANUP:%.*]], label [[IF_END:%.*]]15; CHECK: if.end:16; CHECK-NEXT: br label [[CLEANUP]]17; CHECK: cleanup:18; CHECK-NEXT: ret i32 019;20entry:21 %1 = load float, ptr %isec, align 422 %arrayidx10 = getelementptr inbounds float, ptr %isec, i64 123 %2 = load float, ptr %arrayidx10, align 424 %mul16 = fmul fast float %0, %225 %mul55 = fmul fast float 0.000000e+00, %126 %cmp61 = fcmp fast oge float 0.000000e+00, 0.000000e+0027 %cmp63 = fcmp fast ogt float %mul55, %mul1628 br i1 %cmp63, label %cleanup, label %if.end29 30if.end:31 br label %cleanup32 33cleanup:34 ret i32 035}36