1*9880d681SAndroid Build Coastguard Worker; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=x86_64-unknown-unknown < %s | FileCheck %s 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_ueq(<4 x float> %in) { 5*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_ueq: 6*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 7*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: pcmpeqd %xmm0, %xmm0 8*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 9*9880d681SAndroid Build Coastguard Worker; 10*9880d681SAndroid Build Coastguard Worker %t0 = fcmp ueq <4 x float> %in, %in 11*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 12*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 13*9880d681SAndroid Build Coastguard Worker} 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_uge(<4 x float> %in) { 16*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_uge: 17*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 18*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: pcmpeqd %xmm0, %xmm0 19*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 20*9880d681SAndroid Build Coastguard Worker; 21*9880d681SAndroid Build Coastguard Worker %t0 = fcmp uge <4 x float> %in, %in 22*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 23*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 24*9880d681SAndroid Build Coastguard Worker} 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_ule(<4 x float> %in) { 27*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_ule: 28*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 29*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: pcmpeqd %xmm0, %xmm0 30*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 31*9880d681SAndroid Build Coastguard Worker; 32*9880d681SAndroid Build Coastguard Worker %t0 = fcmp ule <4 x float> %in, %in 33*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 34*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 35*9880d681SAndroid Build Coastguard Worker} 36*9880d681SAndroid Build Coastguard Worker 37*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_one(<4 x float> %in) { 38*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_one: 39*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 40*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: xorps %xmm0, %xmm0 41*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 42*9880d681SAndroid Build Coastguard Worker; 43*9880d681SAndroid Build Coastguard Worker %t0 = fcmp one <4 x float> %in, %in 44*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 45*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 46*9880d681SAndroid Build Coastguard Worker} 47*9880d681SAndroid Build Coastguard Worker 48*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_ogt(<4 x float> %in) { 49*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_ogt: 50*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 51*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: xorps %xmm0, %xmm0 52*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 53*9880d681SAndroid Build Coastguard Worker; 54*9880d681SAndroid Build Coastguard Worker %t0 = fcmp ogt <4 x float> %in, %in 55*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 56*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 57*9880d681SAndroid Build Coastguard Worker} 58*9880d681SAndroid Build Coastguard Worker 59*9880d681SAndroid Build Coastguard Workerdefine <4 x i32> @test_olt(<4 x float> %in) { 60*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_olt: 61*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 62*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: xorps %xmm0, %xmm0 63*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 64*9880d681SAndroid Build Coastguard Worker; 65*9880d681SAndroid Build Coastguard Worker %t0 = fcmp olt <4 x float> %in, %in 66*9880d681SAndroid Build Coastguard Worker %t1 = sext <4 x i1> %t0 to <4 x i32> 67*9880d681SAndroid Build Coastguard Worker ret <4 x i32> %t1 68*9880d681SAndroid Build Coastguard Worker} 69