7086394: c2/arm: enable UseFPUForSpilling
Summary: ARM has instructions to move data directly between the fpu and integer registers.
Reviewed-by: kvn, never
--- a/hotspot/src/share/vm/opto/matcher.cpp Mon Sep 05 17:09:05 2011 -0700
+++ b/hotspot/src/share/vm/opto/matcher.cpp Wed Sep 07 09:35:52 2011 +0200
@@ -501,6 +501,12 @@
idealreg2spillmask[Op_RegP]->OR(*idealreg2regmask[Op_RegD]);
#else
idealreg2spillmask[Op_RegP]->OR(*idealreg2regmask[Op_RegF]);
+#ifdef ARM
+ // ARM has support for moving 64bit values between a pair of
+ // integer registers and a double register
+ idealreg2spillmask[Op_RegL]->OR(*idealreg2regmask[Op_RegD]);
+ idealreg2spillmask[Op_RegD]->OR(*idealreg2regmask[Op_RegL]);
+#endif
#endif
}