155 Commits

Author SHA1 Message Date
Coleen Phillimore
b1ce2c0fe8 8208172: SIGSEGV when owner of invokedynamic bootstrap method throws an exception - Symbol::increment_refcount()+0x0
Table for resolution errors always expect non-null message string.

Reviewed-by: dholmes, iklam
2018-08-22 07:51:07 -04:00
Ioi Lam
bc62b3a40e 8209647: constantPoolHandle::constantPoolHandle(ConstantPool*) when precompiled header is disabled
Added fieldDescriptor.inline.hpp

Reviewed-by: coleenp, shade
2018-08-20 13:58:23 -07:00
Lois Foltan
75ed173e15 8209301: JVM rename is_anonymous, host_klass to unsafe specific terminology ahead of Unsafe.defineAnonymousClass deprecation
Clean up VM anonymous class terminology.

Reviewed-by: coleenp, dholmes, mchung
2018-08-20 08:25:57 -04:00
Jiangli Zhou
da4684e2e1 8209389: SIGSEGV in WalkOopAndArchiveClosure::do_oop_work
Check the MetaspaceShared::archive_heap_object return value and handle failure accordingly.

Reviewed-by: iklam, coleenp
2018-08-16 17:29:22 -04:00
Gerard Ziemski
b75805c1a5 8195100: Use a low latency hashtable for SymbolTable
Used concurrentHashTable, similar to stringTable

Reviewed-by: coleenp, kbarrett, iklam, pliden
2018-08-14 18:42:14 -05:00
Coleen Phillimore
d1aea148fe 8207924: serviceability/sa/TestUniverse.java#id0 intermittently fails with assert(get_instanceKlass()->is_loaded()) failed: must be at least loaded
InstanceKlass::implementors() needs the Compile_lock

Reviewed-by: thartmann, eosterlund
2018-08-11 12:49:33 -04:00
Roman Kennke
cbcc690048 8205523: Explicit barriers for interpreter
Reviewed-by: eosterlund, coleenp
2018-06-22 16:07:15 +02:00
Roman Kennke
f62fa67625 8204969: Asserts in objArrayKlass.cpp need to use _raw variants of obj_addr_at()
Reviewed-by: tschatzl, eosterlund
2018-08-09 17:11:11 +02:00
Coleen Phillimore
a7b66f6f5e 8208677: Move inner metaspace cleaning out of class unloading
Move to safepoint cleanup actions to do if needed.

Reviewed-by: eosterlund, hseigel
2018-08-08 15:24:21 -04:00
Thomas Schatzl
9c0720b156 8208671: Runtime, JFR, Serviceability changes to allow enabling -Wreorder
Reviewed-by: dholmes, hseigel
2018-08-08 15:31:07 +02:00
Ioi Lam
1b2e7cbaef 8208999: Some use of Klass* should be replaced by InstanceKlass*
Klass::java_super() => InstanceKlass*; InstanceKlass::{local,transitive}_interfaces() => Array<InstanceKlass*>*

Reviewed-by: coleenp, hseigel
2018-08-07 15:45:07 -07:00
Harold Seigel
82186ce311 8208604: Metadata::print_value_string() compares 'this' to NULL
Remove the comparison and add asserts to check for NULL

Reviewed-by: coleenp, gziemski
2018-08-06 14:20:58 -04:00
Harold Seigel
38db1d1620 8202171: Some oopDesc functions compare this with NULL
Add Method* parameter and made verify* methods static to avoid 'this' comparison with NULL, Added NULL checks before calling print_on() methods.

Reviewed-by: kbarrett, coleenp
2018-07-31 14:24:10 -04:00
Harold Seigel
7d04a31fc8 8208399: Metadata methods print_(value_)on_maybe_null() compare 'this' to NULL
Add Method* parameter and make method static to avoid 'this' comparison with NULL

Reviewed-by: lfoltan, gziemski, coleenp
2018-07-31 09:55:09 -04:00
Harold Seigel
c277f9ed8e 8207779: Method::is_valid_method() compares 'this' with NULL
Add Method* parameter and make method static to avoid 'thi's comparison with NULL

Reviewed-by: lfoltan, coleenp
2018-07-30 16:35:54 -04:00
Coleen Phillimore
39dd04b953 8207359: Make SymbolTable increment_refcount disallow zero
Use cmpxchg for non permanent symbol refcounting, and pack refcount and length into an int.

Reviewed-by: gziemski, kbarrett, iklam
2018-07-20 14:52:11 -04:00
Lois Foltan
cc58241bec 8205611: Improve the wording of LinkageErrors to include module and class loader information
Clean up the wording of loader constraint violations to include the module and class loader information.

Reviewed-by: coleenp, goetz, hseigel
2018-07-16 11:34:17 -04:00
Lois Foltan
e8fcd927c3 8178712: ResourceMark may be missing inside initialize_[vi]table
Clean up use of ResourceMark within initialize_[vi]table.

Reviewed-by: ccheung, iklam, jiangli
2018-07-16 09:06:33 -04:00
Paul Sandoz
a0e9bf4280 8202769: jck test fails with C2: vm/jvmti/FollowReferences/fref001/fref00113/fref00113.html
Reviewed-by: kvn, coleenp
2018-07-02 10:09:01 -07:00
Erik Österlund
e4dbe9909f 8205683: Refactor heap allocation to separate concerns
Reviewed-by: pliden, kbarrett
2018-06-28 14:22:28 +02:00
Stefan Karlsson
03d213bcda 8205923: ZGC: Verification applies load barrier before verification
Reviewed-by: pliden, eosterlund
2018-06-27 15:02:53 +02:00
Kim Barrett
8a2170dad7 8205559: Remove IN_CONCURRENT_ROOT Access decorator
Removed decorator and made all NativeAccess use barriers.

Reviewed-by: pliden, stefank
2018-06-26 16:59:38 -04:00
Stefan Karlsson
5012044e63 8205607: Use oop_iterate instead of oop_iterate_no_header
Reviewed-by: pliden, kbarrett
2018-06-26 13:54:19 +02:00
Lois Foltan
7ca4027957 8169559: Add class loader names to relevant VM messages
Added new method class_in_module_of_loader to provide a standard format for class information within error messages.

Reviewed-by: goetz, hseigel, mchung
2018-06-25 11:33:11 -04:00
Stefan Karlsson
11813888b8 8204540: Automatic oop closure devirtualization
Reviewed-by: kbarrett, eosterlund
2018-05-26 06:59:49 +02:00
Michihiro Horie
4641ea7bed 8204524: Unnecessary memory barriers in G1ParScanThreadState::copy_to_survivor_space
Reviewed-by: kbarrett, mdoerr, drwhite, tschatzl
2018-06-25 10:41:03 +02:00
Tom Rodriguez
0173db08e9 8198909: [Graal] compiler/codecache/stress/UnexpectedDeoptimizationTest.java crashed with SIGSEGV
Reviewed-by: eosterlund, iveresov
2018-06-24 21:46:11 -07:00
David Holmes
95bf19563b 8010319: Implementation of JEP 181: Nest-Based Access Control
Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Maurizio Mimadamore <maurizio.mimadamore@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Tobias Hartmann <tobias.hartmann@oracle.com>
Co-authored-by: Vlaidmir Ivanov <vladimir.x.ivanov@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Vladimir Kozlov <vladimir.kozlov@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Daniel Smith <daniel.smith@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Kumar Srinivasan <kumardotsrinivasan@gmail.com>
Co-authored-by: Boris Ulasevich <boris.ulasevich@bell-sw.com>
Reviewed-by: alanb, psandoz, mchung, coleenp, acorn, mcimadamore, forax, jlahoda, sspitsyn, abuckley
2018-06-23 01:32:41 -04:00
Igor Veresov
90c4e07b60 8204209: [Graal] Compilation fails during nmethod printing with "assert(bci == 0 || 0 <= bci && bci < code_size()) failed: illegal bci"
Tolerate JVMCI placeholder bcis

Reviewed-by: kvn, never, dlong
2018-06-22 15:58:32 -07:00
Kim Barrett
b84c23399e 8205459: Rename Access API flag decorators
Rename OOP_NOT_NULL, IN_HEAP_ARRAY, AS_DEST_NOT_INITIALIZED

Reviewed-by: pliden, stefank
2018-06-22 17:46:58 -04:00
Martin Doerr
ea76c6d316 8205172: 32 bit build broken
Reviewed-by: roland, kvn, dholmes
2018-06-19 16:29:48 +02:00
Lois Foltan
425e1a8bb8 8202605: Standardize on ClassLoaderData::loader_name() throughout the VM to obtain a class loader's name
Introduced ClassLoaderData::name() and ClassLoaderData::name_and_id() for use when obtaining a class loader's name.

Reviewed-by: coleenp, goetz, mchung, stuefe
2018-06-19 07:54:11 -04:00
Goetz Lindenmaier
731d9b1499 8204268: Improve some IncompatibleClassChangeError messages
Reviewed-by: stuefe, hseigel
2018-06-15 12:31:28 +02:00
Roland Westrelin
97dd8bf743 8203197: C2: consider all paths in loop body for loop predication
Reviewed-by: kvn, neliasso
2018-06-19 09:08:39 +02:00
Goetz Lindenmaier
4a24d95917 8204943: Improve message of ArrayStoreException
Reviewed-by: lfoltan, hseigel
2018-06-15 12:25:53 +02:00
Kim Barrett
05b5a78903 8204939: Change Access nomenclature: root to native
Rename RootAccess => NativeAccess, IN_ROOT => IN_NATIVE, and related cleanups.

Reviewed-by: pliden, stefank, coleenp
2018-06-15 16:53:58 -04:00
Vladimir Kozlov
9b7a61eff1 8184349: There should be some verification that EnableJVMCI is disabled if a GC not supporting JVMCI is selected
Exit VM with Error when JVMCI does not support seected GC.

Reviewed-by: iveresov, thartmann
2018-06-15 09:16:48 -07:00
Roland Westrelin
724e41cbb6 8204240: Extend MDO to allow more reasons to be recorded per bci
Reviewed-by: kvn, neliasso
2018-06-11 15:28:24 +02:00
Thomas Stuefe
5b7f558b70 8203343: VM.{metaspace|classloaders|classhierarchy...} jcmd should show invocation targets for Generated{Method|Constructor}AccessorImpl classes
Reviewed-by: coleenp, sspitsyn, dholmes
2018-06-14 21:49:46 +02:00
Harold Seigel
2595bdf177 8204620: ModuleEntry::is_non_jdk_module() determination for what is a jdk module is incorrect
Check module's loader and compare version with java.base's version to improve algorithm

Reviewed-by: lfoltan, mchung
2018-06-14 10:33:54 -04:00
Kim Barrett
df34500027 8204585: Remove IN_ARCHIVE_ROOT from Access API
Replaced Access API with API on heap.

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Reviewed-by: jiangli, coleenp, tschatzl
2018-06-12 18:12:59 -04:00
Erik Österlund
da0babd9b9 8204504: Fix for 8198285 breaks slowdebug builds
Reviewed-by: rkennke, mgronlun
2018-06-08 11:30:10 +02:00
Per Lidén
977a3ef019 8204474: Have instanceRefKlass use HeapAccess when loading the referent
Reviewed-by: stefank, eosterlund
2018-06-07 21:57:17 +02:00
Robbin Ehn
66f8951e15 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by: coleenp, gziemski, iklam, jiangli
2018-06-07 14:11:56 +02:00
Coleen Phillimore
892a2af03f 8204301: Make OrderAccess functions available to hpp rather than inline.hpp files
Move orderAccess.inline.hpp into orderAccess.hpp and remove os.hpp inclusion and conditional os::is_MP() for fence on x86 platforms

Reviewed-by: dholmes, hseigel
2018-06-06 10:45:40 -04:00
Coleen Phillimore
3e3414dbf3 8203837: Split nmethod unloading from inline cache cleaning
Refactor cleaning inline caches to after GC do_unloading.

Reviewed-by: thartmann, eosterlund
2018-05-02 11:28:49 -04:00
Michihiro Horie
1213297257 8154736: enhancement of cmpxchg and copy_to_survivor for ppc64
Reviewed-by: eosterlund, mdoerr, kbarrett
2018-06-05 09:29:15 +02:00
Roman Kennke
482e40cc8c 8198285: More consistent Access API for arraycopy
Reviewed-by: eosterlund, shade
2018-06-04 23:01:48 +02:00
Coleen Phillimore
89251ae9a3 8204087: C++ Interpreter code left over in MethodData
Remove unused code

Reviewed-by: kvn, lfoltan, thartmann
2018-05-31 09:19:54 -04:00
Goetz Lindenmaier
ff2c3d4dbe 8203881: Print erroneous size in NegativeArraySizeException
Reviewed-by: dholmes, stuefe
2018-05-30 11:39:26 +02:00