RFR: 8199946: Move load/store and encode/decode out of oopDesc (original) (raw)
coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Fri Mar 23 16:05:04 UTC 2018
- Previous message: RFR: 8199946: Move load/store and encode/decode out of oopDesc
- Next message: RFR: 8199946: Move load/store and encode/decode out of oopDesc
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
http://cr.openjdk.java.net/~stefank/8199946/webrev.02/src/hotspot/cpu/arm/nativeInst_arm_64.cpp.udiff.html http://cr.openjdk.java.net/~stefank/8199946/webrev.02/src/hotspot/cpu/arm/relocInfo_arm.cpp.udiff.html
I think the include should be oops/compressedOops.inline.hpp in these.
Besides my confusion over whether RawAccess<>::oop_load and store decode the oop or not in the gc code, this looks really good to me. It's nice to encapsulate the compressedOops code now.
Thanks, Coleen
On 3/22/18 12:01 PM, Stefan Karlsson wrote:
Hi,
This patch needs Erik's change to the LoadProxies: http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2018-March/021504.html
to build on fastdebug. Here's a rebased patch: http://cr.openjdk.java.net/~stefank/8199946/webrev.02/ Thanks, StefanK On 2018-03-21 18:27, Stefan Karlsson wrote: Hi all,
Please review this patch to get rid of the oopDesc::load/store functions and to move the oopDesc::encode/decode functions to a new CompressedOops subsystem. http://cr.openjdk.java.net/~stefank/8199946/webrev.01 https://bugs.openjdk.java.net/browse/JDK-8199946 When the Access API was introduced many of the usages of oopDesc::loaddecodeheapoop, and friends, were replaced by calls to the Access API. However, there are still some usages of these functions, most notably in the GC code. This patch is two-fold: 1) It replaces the oopDesc load and store calls with RawAccess equivalents. 2) It moves the oopDesc encode and decode functions to a new, separate, subsystem called CompressedOops. A future patch could even move all the Universe::narrowoop variables over to CompressedOops. The second part has the nice property that it breaks up a circular dependency between oop.inline.hpp and access.inline.hpp. After the change we have: oop.inline.hpp includes: access.inline.hpp compressedOops.inline.hpp access.inline.hpp includes: compressedOops.inline.hpp Thanks, StefanK
- Previous message: RFR: 8199946: Move load/store and encode/decode out of oopDesc
- Next message: RFR: 8199946: Move load/store and encode/decode out of oopDesc
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]