The Solaris Studio 12 update 1 C++ compiler was incorrectly re-ordering the reads of an object's mark word in oopDesc::forward_to_atomic(). This opened a small window where one thread could execute the successful CAS path even though another thread had already successfully forwarded the object. This could result in an object being copied twice. The code in oopDesc::forward_to_atomic() was changed to read the mark word once. Reviewed-by: ysr, tonyp
README: This file should be located at the top of the hotspot Mercurial repository. See http://openjdk.java.net/ for more information about the OpenJDK. See ../README-builds.html for complete details on build machine requirements. Simple Build Instructions: cd make && gnumake The files that will be imported into the jdk build will be in the "build" directory.