hg: ppc-aix-port/jdk7u/hotspot: Extend Load and Store nodes to know about memory ordering.
Changeset: bcc03d1e64ee Author: Goetz Lindenmaier Date: 2012-09-18 14:10 +0200 URL: http://hg.openjdk.java.net/ppc-aix-port/jdk7u/hotspot/rev/bcc03d1e64ee Extend Load and Store nodes to know about memory ordering. On some platforms, Load and Store nodes can be reordered violating the semantics required by Java. E.g., a Store publishing the pointer to a new Java object may not be executed before the Stores initializing the object. PPC and IA64 for example have such weak memory ordering. This change adds a field sem to all Load/Store nodes. The field is either set to 'unordered', if the node may be reordered with others, or to 'acquire' for Loads and 'release' for Stores. The change also contains the code setting the field during IR construction. On platforms with weak memory ordering, the ad-file must specify two versions for each Load/Store node, checking the sem property and issuing an according operation. ! src/share/vm/opto/generateOptoStub.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/parse3.cpp ! src/share/vm/opto/vectornode.hpp
participants (1)
-
goetz.lindenmaier@sap.com