42 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 52; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-grtev4-linux-gnu < %s | FileCheck %s3 4define void @test() {5; CHECK-LABEL: define void @test() {6; CHECK-NEXT: [[ENTRY:.*]]:7; CHECK-NEXT: br i1 false, label %[[BB1:.*]], label %[[BB2:.*]]8; CHECK: [[BB2]]:9; CHECK-NEXT: [[CMP14_US:%.*]] = fcmp ogt x86_fp80 0xK00000000000000000000, 0xK0000000000000000000010; CHECK-NEXT: [[IMAX_2_US:%.*]] = select i1 [[CMP14_US]], i64 0, i64 011; CHECK-NEXT: [[JMAX_2_US:%.*]] = select i1 [[CMP14_US]], i64 0, i64 012; CHECK-NEXT: [[CMP13_US:%.*]] = fcmp olt x86_fp80 0xK00000000000000000000, 0xK0000000000000000000013; CHECK-NEXT: [[IMIN_2_US:%.*]] = select i1 [[CMP13_US]], i64 0, i64 014; CHECK-NEXT: [[JMIN_2_US:%.*]] = select i1 [[CMP13_US]], i64 0, i64 015; CHECK-NEXT: br label %[[BB1]]16; CHECK: [[BB1]]:17; CHECK-NEXT: [[STOREMERGE64:%.*]] = phi i64 [ 0, %[[ENTRY]] ], [ [[IMIN_2_US]], %[[BB2]] ]18; CHECK-NEXT: [[STOREMERGE63:%.*]] = phi i64 [ 0, %[[ENTRY]] ], [ [[JMIN_2_US]], %[[BB2]] ]19; CHECK-NEXT: [[STOREMERGE62:%.*]] = phi i64 [ 0, %[[ENTRY]] ], [ [[IMAX_2_US]], %[[BB2]] ]20; CHECK-NEXT: [[STOREMERGE:%.*]] = phi i64 [ 0, %[[ENTRY]] ], [ [[JMAX_2_US]], %[[BB2]] ]21; CHECK-NEXT: ret void22;23entry:24 br i1 false, label %bb1, label %bb225 26bb2:27 %cmp14.us = fcmp ogt x86_fp80 0xK00000000000000000000, 0xK0000000000000000000028 %imax.2.us = select i1 %cmp14.us, i64 0, i64 029 %jmax.2.us = select i1 %cmp14.us, i64 0, i64 030 %cmp13.us = fcmp olt x86_fp80 0xK00000000000000000000, 0xK0000000000000000000031 %imin.2.us = select i1 %cmp13.us, i64 0, i64 032 %jmin.2.us = select i1 %cmp13.us, i64 0, i64 033 br label %bb134 35bb1:36 %storemerge64 = phi i64 [ 0, %entry ], [ %imin.2.us, %bb2 ]37 %storemerge63 = phi i64 [ 0, %entry ], [ %jmin.2.us, %bb2 ]38 %storemerge62 = phi i64 [ 0, %entry ], [ %imax.2.us, %bb2 ]39 %storemerge = phi i64 [ 0, %entry ], [ %jmax.2.us, %bb2 ]40 ret void41}42