review (S) for 6909440: C2 fails with assertion (_always_cold->is_cold(), "must always be cold")

Tom Rodriguez tom.rodriguez at oracle.com
Fri Apr 1 17:36:21 PDT 2011


http://cr.openjdk.java.net/~never/6909440

6909440: C2 fails with assertion (_always_cold->is_cold(),"must always be cold")
Reviewed-by:

The always_cold and always_hot objects are initialized lazily which
relies on the initialization occurring before it's published but the
windows x64 code publishes it first which creates a tiny race where
another thread can see the uninitialized value.  I probably could have
put in a volatile but I decided to just initialize them in the normal
way using a static constructor.  Tested with failing test from report.



More information about the hotspot-compiler-dev mailing list