Mercurial > hg > graal-compiler
comparison 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 |
comparison
equal
deleted
inserted
replaced
1273:877a14af58e1 | 1274:2883969d09e7 |
---|---|
1442 | 1442 |
1443 // Advertise here if the CPU requires explicit rounding operations | 1443 // Advertise here if the CPU requires explicit rounding operations |
1444 // to implement the UseStrictFP mode. | 1444 // to implement the UseStrictFP mode. |
1445 const bool Matcher::strict_fp_requires_explicit_rounding = true; | 1445 const bool Matcher::strict_fp_requires_explicit_rounding = true; |
1446 | 1446 |
1447 // Do floats take an entire double register or just half? | 1447 // Are floats conerted to double when stored to stack during deoptimization? |
1448 const bool Matcher::float_in_double = true; | 1448 // On x32 it is stored with convertion only when FPU is used for floats. |
1449 bool Matcher::float_in_double() { return (UseSSE == 0); } | |
1450 | |
1449 // Do ints take an entire long register or just half? | 1451 // Do ints take an entire long register or just half? |
1450 const bool Matcher::int_in_long = false; | 1452 const bool Matcher::int_in_long = false; |
1451 | 1453 |
1452 // Return whether or not this register is ever used as an argument. This | 1454 // Return whether or not this register is ever used as an argument. This |
1453 // function is used on startup to build the trampoline stubs in generateOptoStub. | 1455 // function is used on startup to build the trampoline stubs in generateOptoStub. |