summaryrefslogtreecommitdiff
path: root/lib/builtins/arm/adddf3vfp.S
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-14 15:38:48 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-14 15:38:48 +0000
commit5894cadf20b9970848068ff54fa4e2bfd0a9683b (patch)
treed2cbfed3f6ec3aaf3c88cfee1f6512e155cc82f8 /lib/builtins/arm/adddf3vfp.S
parent3bce7d2fca357e6a1db9eff4a1c58545a3020f1b (diff)
Notes
Diffstat (limited to 'lib/builtins/arm/adddf3vfp.S')
-rw-r--r--lib/builtins/arm/adddf3vfp.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/builtins/arm/adddf3vfp.S b/lib/builtins/arm/adddf3vfp.S
index f4c00a03e05f..8e476cad1624 100644
--- a/lib/builtins/arm/adddf3vfp.S
+++ b/lib/builtins/arm/adddf3vfp.S
@@ -18,10 +18,14 @@
.syntax unified
.p2align 2
DEFINE_COMPILERRT_FUNCTION(__adddf3vfp)
+#if defined(COMPILER_RT_ARMHF_TARGET)
+ vadd.f64 d0, d0, d1
+#else
vmov d6, r0, r1 // move first param from r0/r1 pair into d6
vmov d7, r2, r3 // move second param from r2/r3 pair into d7
vadd.f64 d6, d6, d7
vmov r0, r1, d6 // move result back to r0/r1 pair
+#endif
bx lr
END_COMPILERRT_FUNCTION(__adddf3vfp)