xref: /aosp_15_r20/external/llvm/test/CodeGen/ARM/neon_cmp.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=arm-eabi -mcpu=cortex-a9 %s -o - | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker; bug 15283
4*9880d681SAndroid Build Coastguard Worker; radar://13191881
5*9880d681SAndroid Build Coastguard Worker; CHECK: vfcmp
6*9880d681SAndroid Build Coastguard Workerdefine void @vfcmp(<2 x double>* %a, <2 x double>* %b) {
7*9880d681SAndroid Build Coastguard Worker  %wide.load = load <2 x double>, <2 x double>* %a, align 4
8*9880d681SAndroid Build Coastguard Worker  %wide.load2 = load <2 x double>, <2 x double>* %b, align 4
9*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vdup.32
10*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vmovn.i64
11*9880d681SAndroid Build Coastguard Worker  %v1 = fcmp olt <2 x double> %wide.load, %wide.load2
12*9880d681SAndroid Build Coastguard Worker  %v2 = zext <2 x i1> %v1 to <2 x i32>
13*9880d681SAndroid Build Coastguard Worker  %v3 = sitofp <2 x i32> %v2 to <2 x double>
14*9880d681SAndroid Build Coastguard Worker  store <2 x double> %v3, <2 x double>* %b, align 4
15*9880d681SAndroid Build Coastguard Worker  ret void
16*9880d681SAndroid Build Coastguard Worker}
17