1*9880d681SAndroid Build Coastguard Worker; RUN: opt -instcombine -S -o - < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Workerdeclare <4 x float> @llvm.fabs.v4f32(<4 x float>) 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine <4 x i1> @test1(<4 x float> %V) { 5*9880d681SAndroid Build Coastguard Workerentry: 6*9880d681SAndroid Build Coastguard Worker %abs = call <4 x float> @llvm.fabs.v4f32(<4 x float> %V) 7*9880d681SAndroid Build Coastguard Worker %cmp = fcmp olt <4 x float> %abs, zeroinitializer 8*9880d681SAndroid Build Coastguard Worker ret <4 x i1> %cmp 9*9880d681SAndroid Build Coastguard Worker} 10*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: define <4 x i1> @test1( 11*9880d681SAndroid Build Coastguard Worker; CHECK: ret <4 x i1> zeroinitializer 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerdeclare float @fabsf() 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerdefine i1 @test2() { 16*9880d681SAndroid Build Coastguard Worker %call = call float @fabsf() 17*9880d681SAndroid Build Coastguard Worker %cmp = fcmp olt float %call, 0.000000e+00 18*9880d681SAndroid Build Coastguard Worker ret i1 %cmp 19*9880d681SAndroid Build Coastguard Worker} 20*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: define i1 @test2( 21*9880d681SAndroid Build Coastguard Worker; CHECK: %[[call:.*]] = call float @fabsf() 22*9880d681SAndroid Build Coastguard Worker; CHECK: %[[cmp:.*]] = fcmp olt float %[[call]], 0.000000e+00 23*9880d681SAndroid Build Coastguard Worker; CHECK: ret i1 %[[cmp]] 24