1*9880d681SAndroid Build Coastguard Worker; RUN: llc -march=hexagon -mcpu=hexagonv5 < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker; Check that we generate floating point compare in V5 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker; CHECK: p{{[0-2]+}} = sfcmp.{{.}} 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Workerdefine i32 @foo(float %y) nounwind { 7*9880d681SAndroid Build Coastguard Workerentry: 8*9880d681SAndroid Build Coastguard Worker %retval = alloca i32, align 4 9*9880d681SAndroid Build Coastguard Worker %y.addr = alloca float, align 4 10*9880d681SAndroid Build Coastguard Worker store float %y, float* %y.addr, align 4 11*9880d681SAndroid Build Coastguard Worker %0 = load float, float* %y.addr, align 4 12*9880d681SAndroid Build Coastguard Worker %cmp = fcmp ogt float %0, 0x406AD7EFA0000000 13*9880d681SAndroid Build Coastguard Worker br i1 %cmp, label %if.then, label %if.else 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerif.then: ; preds = %entry 16*9880d681SAndroid Build Coastguard Worker store i32 1, i32* %retval 17*9880d681SAndroid Build Coastguard Worker br label %return 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerif.else: ; preds = %entry 20*9880d681SAndroid Build Coastguard Worker store i32 2, i32* %retval 21*9880d681SAndroid Build Coastguard Worker br label %return 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %if.else, %if.then 24*9880d681SAndroid Build Coastguard Worker %1 = load i32, i32* %retval 25*9880d681SAndroid Build Coastguard Worker ret i32 %1 26*9880d681SAndroid Build Coastguard Worker} 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Workerdefine i32 @main() nounwind { 29*9880d681SAndroid Build Coastguard Workerentry: 30*9880d681SAndroid Build Coastguard Worker %retval = alloca i32, align 4 31*9880d681SAndroid Build Coastguard Worker %a = alloca float, align 4 32*9880d681SAndroid Build Coastguard Worker store i32 0, i32* %retval 33*9880d681SAndroid Build Coastguard Worker store float 0x40012E0A00000000, float* %a, align 4 34*9880d681SAndroid Build Coastguard Worker %0 = load float, float* %a, align 4 35*9880d681SAndroid Build Coastguard Worker %call = call i32 @foo(float %0) 36*9880d681SAndroid Build Coastguard Worker ret i32 %call 37*9880d681SAndroid Build Coastguard Worker} 38