xref: /aosp_15_r20/external/llvm/test/CodeGen/ARM/2009-09-27-CoalescerBug.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=armv7-eabi -mcpu=cortex-a8
2*9880d681SAndroid Build Coastguard Worker; PR5055
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Workermodule asm ".globl\09__aeabi_f2lz"
5*9880d681SAndroid Build Coastguard Workermodule asm ".set\09__aeabi_f2lz, __fixsfdi"
6*9880d681SAndroid Build Coastguard Workermodule asm ""
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Workerdefine arm_aapcs_vfpcc i64 @__fixsfdi(float %a) nounwind {
9*9880d681SAndroid Build Coastguard Workerentry:
10*9880d681SAndroid Build Coastguard Worker  %0 = fcmp olt float %a, 0.000000e+00            ; <i1> [#uses=1]
11*9880d681SAndroid Build Coastguard Worker  br i1 %0, label %bb, label %bb1
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Workerbb:                                               ; preds = %entry
14*9880d681SAndroid Build Coastguard Worker  %1 = fsub float -0.000000e+00, %a               ; <float> [#uses=1]
15*9880d681SAndroid Build Coastguard Worker  %2 = tail call arm_aapcs_vfpcc  i64 @__fixunssfdi(float %1) nounwind ; <i64> [#uses=1]
16*9880d681SAndroid Build Coastguard Worker  %3 = sub i64 0, %2                              ; <i64> [#uses=1]
17*9880d681SAndroid Build Coastguard Worker  ret i64 %3
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Workerbb1:                                              ; preds = %entry
20*9880d681SAndroid Build Coastguard Worker  %4 = tail call arm_aapcs_vfpcc  i64 @__fixunssfdi(float %a) nounwind ; <i64> [#uses=1]
21*9880d681SAndroid Build Coastguard Worker  ret i64 %4
22*9880d681SAndroid Build Coastguard Worker}
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Workerdeclare arm_aapcs_vfpcc i64 @__fixunssfdi(float)
25