1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

Add an easy microoptimization I noticed.

llvm-svn: 43164
This commit is contained in:
Chris Lattner 2007-10-19 03:29:26 +00:00
parent 9b11c8ab03
commit 57e2fa4ba0

View File

@ -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.
//===---------------------------------------------------------------------===//