RFR (L, tedious) 8160399: is_oop_or_null involves undefined behavior
coleen.phillimore at oracle.com
coleen.phillimore at oracle.com
Thu Aug 17 17:21:09 UTC 2017
Summary: replace oop->is_oop*() with oopDesc::is_oop*(oop) so this
pointer can be verified
Also included is:
8164984: Improper use of is_oop in production code
http://cr.openjdk.java.net/~coleenp/8160399.01/webrev/src/share/vm/classfile/javaClasses.cpp.udiff.html
I also moved is_oop() to the .cpp file, which reduces the size of
fastdebug libjvm.so a little, since is_oop is only used for assert and
verification.
before: -rw-r--r-- 1 cphillim 35086408 Aug 17 12:08 libjvm.so
after: -rw-r--r-- 1 cphillim 35073384 Aug 17 12:12 libjvm.so
Ran all platforms nightly tests (still in progress but no new failures).
Sorry for the boring code review request.
Thanks,
Coleen
More information about the hotspot-dev
mailing list