--- a/hotspot/src/cpu/x86/vm/x86_32.ad Thu Feb 18 15:05:10 2010 -0800
+++ b/hotspot/src/cpu/x86/vm/x86_32.ad Fri Feb 19 10:04:16 2010 -0800
@@ -1444,8 +1444,10 @@
// to implement the UseStrictFP mode.
const bool Matcher::strict_fp_requires_explicit_rounding = true;
-// Do floats take an entire double register or just half?
-const bool Matcher::float_in_double = true;
+// Are floats conerted to double when stored to stack during deoptimization?
+// On x32 it is stored with convertion only when FPU is used for floats.
+bool Matcher::float_in_double() { return (UseSSE == 0); }
+
// Do ints take an entire long register or just half?
const bool Matcher::int_in_long = false;