diff options
Diffstat (limited to 'test/CodeGen/ARM/aapcs-hfa-code.ll')
-rw-r--r-- | test/CodeGen/ARM/aapcs-hfa-code.ll | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/test/CodeGen/ARM/aapcs-hfa-code.ll b/test/CodeGen/ARM/aapcs-hfa-code.ll index 396e838..5545dfd 100644 --- a/test/CodeGen/ARM/aapcs-hfa-code.ll +++ b/test/CodeGen/ARM/aapcs-hfa-code.ll @@ -54,12 +54,11 @@ define arm_aapcs_vfpcc void @test_1double({ double } %a) { ; CHECK: bl test_1double ; CHECK-M4F-LABEL: test_1double: -; CHECK-M4F: movs [[ONEHI:r[0-9]+]], #0 -; CHECK-M4F: movs [[ONELO:r[0-9]+]], #0 -; CHECK-M4F: movt [[ONEHI]], #16368 -; CHECK-M4F-DAG: vmov s0, [[ONELO]] -; CHECK-M4F-DAG: vmov s1, [[ONEHI]] +; CHECK-M4F: vldr d0, [[CP_LABEL:.*]] ; CHECK-M4F: bl test_1double +; CHECK-M4F: [[CP_LABEL]] +; CHECK-M4F-NEXT: .long 0 +; CHECK-M4F-NEXT: .long 1072693248 call arm_aapcs_vfpcc void @test_1double({ double } { double 1.0 }) ret void @@ -76,11 +75,10 @@ define arm_aapcs_vfpcc void @test_1double_nosplit([4 x float], [4 x double], [3 ; CHECK: bl test_1double_nosplit ; CHECK-M4F-LABEL: test_1double_nosplit: -; CHECK-M4F: movs [[ONELO:r[0-9]+]], #0 ; CHECK-M4F: movs [[ONEHI:r[0-9]+]], #0 +; CHECK-M4F: movs [[ONELO:r[0-9]+]], #0 ; CHECK-M4F: movt [[ONEHI]], #16368 -; CHECK-M4F-DAG: str [[ONELO]], [sp] -; CHECK-M4F-DAG: str [[ONEHI]], [sp, #4] +; CHECK-M4F: strd [[ONELO]], [[ONEHI]], [sp] ; CHECK-M4F: bl test_1double_nosplit call arm_aapcs_vfpcc void @test_1double_nosplit([4 x float] undef, [4 x double] undef, [3 x float] undef, double 1.0) ret void @@ -92,19 +90,16 @@ define arm_aapcs_vfpcc void @test_1double_misaligned([4 x double], [4 x double], call arm_aapcs_vfpcc void @test_1double_misaligned([4 x double] undef, [4 x double] undef, float undef, double 1.0) ; CHECK-LABEL: test_1double_misaligned: -; CHECK-DAG: mov [[ONELO:r[0-9]+]], #0 -; CHECK-DAG: mov r[[BASE:[0-9]+]], sp ; CHECK-DAG: movw [[ONEHI:r[0-9]+]], #0 +; CHECK-DAG: mov [[ONELO:r[0-9]+]], #0 ; CHECK-DAG: movt [[ONEHI]], #16368 -; CHECK-DAG: str [[ONELO]], [r[[BASE]], #8]! -; CHECK-DAG: str [[ONEHI]], [r[[BASE]], #4] +; CHECK-DAG: strd [[ONELO]], [[ONEHI]], [sp, #8] ; CHECK-M4F-LABEL: test_1double_misaligned: -; CHECK-M4F: movs [[ONELO:r[0-9]+]], #0 ; CHECK-M4F: movs [[ONEHI:r[0-9]+]], #0 +; CHECK-M4F: movs [[ONELO:r[0-9]+]], #0 ; CHECK-M4F: movt [[ONEHI]], #16368 -; CHECK-M4F-DAG: str [[ONELO]], [sp, #8] -; CHECK-M4F-DAG: str [[ONEHI]], [sp, #12] +; CHECK-M4F: strd [[ONELO]], [[ONEHI]], [sp, #8] ; CHECK-M4F: bl test_1double_misaligned ret void |