276 Commits

Author SHA1 Message Date
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
Kim Barrett
6c20824cda 8203028: Simplify reference processing in light of JDK-8175797
Removed special handling of Reference.next

Reviewed-by: tschatzl, sjohanss, mchung
2018-05-26 03:11:50 -04:00
Ioi Lam
f9742fc0a6 8193332: MetaspaceShared::check_shared_class_loader_type is not used during archive creation
Reviewed-by: lfoltan, jiangli
2018-05-21 21:27:12 -07:00
Stefan Karlsson
7b0d398bc7 8203339: Add oopDesc::field_offset()
Reviewed-by: rkennke, eosterlund
2018-05-20 22:08:25 +02:00
Erik Gahlin
a060be188d 8199712: Flight Recorder
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Reviewed-by: coleenp, ihse, erikj, dsamersoff, mseledtsov, egahlin, mgronlun
2018-05-15 20:24:34 +02:00
Goetz Lindenmaier
ac3043c692 8201593: Print array length in ArrayIndexOutOfBoundsException
Reviewed-by: dholmes, mdoerr, smonteith, shade, rriggs
2018-05-07 09:11:21 +02:00
Stefan Karlsson
90a2a92fe3 8202709: Move oopDesc::is_archive_object to MetaspaceShared::is_archive_object
Reviewed-by: ehelin, jiangli
2018-05-07 14:57:23 +02:00
Ioi Lam
e48f38966b 8197954: Remove unnecessary intermediary APIs from AppCDS implementation
Reviewed-by: jiangli, ccheung
2018-04-26 13:40:58 -07:00
Goetz Lindenmaier
72a2ac8b8b 8199852: Print more information about class loaders in LinkageErrors
Reviewed-by: dholmes, lfoltan, gtriantafill
2018-05-07 11:38:21 +02:00
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Coleen Phillimore
204ba9a580 8202447: Fix unloading_occurred to mean unloading_occurred
Nmethod unloading does not need to test for jvmti to set unloading_occurred, nor do we need to clean weak Klasses in metadata if unloading does not occur.

Reviewed-by: sspitsyn, rehn
2018-04-27 15:00:04 -04:00
Calvin Cheung
aedb6040c6 8200466: Revisit the setting of _transitive_interfaces in InstanceKlass
Delay the setting of _transitive_interfaces until after initialize_supers() in fill_instance_klass().

Reviewed-by: iklam, coleenp
2018-05-02 09:26:10 -07:00
Erik Österlund
f4893f5a9a 8201543: Modularize C1 GC barriers
Reviewed-by: pliden, rbackman, rkennke
2018-04-26 20:42:43 +02:00
Gerard Ziemski
edc81d17e1 8202150: [REDO] Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-26 11:19:05 -05:00
Gerard Ziemski
816e2e5fe0 8202151: [BACKOUT] Split globals.hpp to factor out the Flag class
Backed out JDK-8081519

Reviewed-by: kvn
2018-04-23 14:51:16 -05:00
Gerard Ziemski
60723b7e3d 8081519: Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-23 10:59:39 -05:00
Stefan Karlsson
04e986f200 8202081: Introduce CollectedHeap::is_oop()
Reviewed-by: eosterlund, rkennke
2018-04-23 11:25:53 +02:00
Per Lidén
a4f21eeb03 8201646: Introduce ReferenceDiscoverer interface
Reviewed-by: stefank, tschatzl, rkennke
2018-04-19 07:54:50 +02:00
Coleen Phillimore
ddfd4c33c6 8201556: Disallow reading oops in ClassLoaderData if unloading
Move class_loader oop to an OopHandle, and assert that holder is alive when getting class_loader.

Reviewed-by: kbarrett, adinn
2018-04-18 18:43:04 -04:00
Coleen Phillimore
c215aa5889 8201537: Remove is_alive closure from Klass::is_loader_alive()
Remove is_alive closure from callers of Klass::is_loader_alive so that cleaning metadata doesn't require GC closure.

Reviewed-by: adinn, stefank
2018-04-18 13:37:39 -04:00
Coleen Phillimore
36d1d59425 8201505: Use WeakHandle for ProtectionDomainCacheTable and ResolvedMethodTable
8193524: Redefining a method that removes use of 1 or more lambda expressions causes the JVM to hang

Remove oop pointers from runtime data structures.

Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Reviewed-by: lfoltan, stefank
2018-04-18 12:06:53 -04:00
Coleen Phillimore
1ee531afe9 8200555: OopHandle should use Access API
Add RootAccess<> to OopHandle.resolve() in runtime and interpreter code.  Add comments for compiler code for later.

Reviewed-by: eosterlund, stefank
2018-04-18 10:39:40 -04:00
Kim Barrett
1ac19a3166 8192025: Less referential references
Reviewed-by: coleenp, eosterlund, mchung, ahgross, rhalade
2018-01-18 22:17:11 -05:00
Harold Seigel
a7c9c021ba 8190478: Improved interface method selection
Reviewed-by: acorn, ahgross, jwilhelm, rhalade
2017-12-05 09:59:36 -05:00
Roman Kennke
d006828c41 8201442: objArrayOopDesc::atomic_compare_exchange_oop() must use obj+offset in HeapAccess call
Reviewed-by: shade, eosterlund
2018-04-12 23:10:19 +02:00
Stefan Karlsson
623c83dad9 8201427: Fix Minimal VM builds on Linux x64
Reviewed-by: shade
2018-04-11 13:52:23 +02:00
Calvin Cheung
4ef7c919a2 8194812: Extend class-data sharing to support the module path
8199360: Rework the support for the 'ignored' module options in CDS

Reviewed-by: jiangli, lfoltan, iklam, mseledtsov
2018-04-10 11:43:40 -07:00
Coleen Phillimore
d187884156 8198313: Wrap holder object for ClassLoaderData in a WeakHandle
Use WeakHandle for ClassLoaderData::_holder so that is_alive closure is not needed

Reviewed-by: rehn, kbarrett
2018-04-10 10:06:42 -04:00
Roman Kennke
389d720746 8199735: Mark word updates need to use Access API
Reviewed-by: shade, eosterlund
2018-04-05 10:54:53 +02:00
Harold Seigel
b89ae10df2 8200261: Regression with JVM anonymous class
Restore resolved anonymous class when creating a new constantpool because of overpass methods

Reviewed-by: coleenp, lfoltan
2018-04-05 13:19:25 -04:00