aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Target/ARM/README.txt19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/Target/ARM/README.txt b/lib/Target/ARM/README.txt
index f05ae1c423..1fb775064e 100644
--- a/lib/Target/ARM/README.txt
+++ b/lib/Target/ARM/README.txt
@@ -573,3 +573,22 @@ __Z11no_overflowjj:
bx lr
//===---------------------------------------------------------------------===//
+
+Easy ARM microoptimization (with -mattr=+vfp2):
+
+define i64 @i(double %X) {
+ %Y = bitcast double %X to i64
+ ret i64 %Y
+}
+
+compiles into:
+
+_i:
+ fmdrr d0, r0, r1
+ fmrrd r0, r1, d0
+ bx lr
+
+This just needs a target-specific dag combine to merge the two ARMISD nodes.
+
+
+//===---------------------------------------------------------------------===//