Mercurial > hg > truffle
diff src/cpu/x86/vm/x86_32.ad @ 1274:2883969d09e7
6910664: C2: java/util/Arrays/Sorting.java fails with DeoptimizeALot flag
Summary: Matcher::float_in_double should be true only when FPU is used for floats.
Reviewed-by: never, twisti
author | kvn |
---|---|
date | Fri, 19 Feb 2010 10:04:16 -0800 |
parents | e8443c7be117 |
children | d7f654633cfe |
line wrap: on
line diff
--- a/src/cpu/x86/vm/x86_32.ad Thu Feb 18 15:05:10 2010 -0800 +++ b/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;