On 7/22/20 8:44 AM, Erik Österlund wrote:
Hi Coleen,
This looks good to me. It's still a bit shady to me that assignment of
OopHandles overwrites the oop*, potentially causing memory leaks (the
previous oop* is not released).
Therefore, it is implied that setters are only used once, to store a
new handle over an uninitialized handle. But we can fix the safety of
this in another patch.
Thank you, Erik, and thank you for suggesting an assert in the
assignment operator. These assignments do not hit that assert but there
were others that did, so I have a separate patch that I'm working on.
See https://bugs.openjdk.java.net/browse/JDK-8249822
Thank you for reviewing this.
Coleen
Thanks,
/Erik
On 2020-07-20 22:53, coleen.phillim...@oracle.com wrote:
Summary: Move static oops into OopStorage and make NPE oops an
objArrayOop.
I've broken up moving oops in Universe to OopStorage into several
parts. This change moves the global static oops. These OopHandles
are not released.
This has been tested with tier1-3 and on also remote-build -b
linux-arm32,linux-ppc64le-debug,linux-s390x-debug,linux-x64-zero.
open webrev at
http://cr.openjdk.java.net/~coleenp/2020/8249768.01/webrev
bug link https://bugs.openjdk.java.net/browse/JDK-8249768
Thanks,
Coleen