Request for review (S): 6636138: UseSuperWord enabled failure

Changpeng Fang Changpeng.Fang at Sun.COM
Thu Mar 12 14:56:02 PDT 2009


This patch also fixes the problem in CR 6812207: Possible bug in a 
floating point (float) arithmetic in 32-bit server HotSpot

http://cr.openjdk.java.net/~cfang/6636138/webrev.00/

The Problem:
SuperWord scheduling ignored the memory dependence, and thus caused 
memory order violation and thus
programs in CR 6636138 and CR 6812207 generated incorrect results.

What in This Patch?:
I have implemented a new superword scheduling approach  to adjust the 
memory graph. For a store superword,
we move all sandwitched memory operations outside the pack based on the 
dependence information.
For a load superword, we use the latest memory state for the pack.

Tests:
JPRT  scimark specjvm98 volano25 jetstream and test cases in CR
6636138 and CR 6812207, and several small self-developed cases.


Thanks,

Changpeng



More information about the hotspot-compiler-dev mailing list