202 Commits

Author SHA1 Message Date
Thomas Schatzl
035d0190a3 8202017: Merge Reference Enqueuing phase with phase 3 of Reference processing
Do reference enqueuing work directly in phase 3 after every Reference.

Reviewed-by: kbarrett, sangheki
2018-05-08 10:01:29 +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
Thomas Schatzl
deb5bf745f 8202021: Improve variable naming in ReferenceProcesso
Reviewed-by: sangheki, sjohanss
2018-05-03 14:10:08 +02:00
Thomas Schatzl
945701e945 8201492: Properly implement non-contiguous generations for Reference discovery
Collectors like G1 implementing non-contiguous generations previously used an inexact but conservative area for discovery. Concurrent and STW reference processing could discover the same reference multiple times, potentially missing referents during evacuation. So these collectors had to take extra measures while concurrent marking/reference discovery has been running. This change makes discovery exact for G1 (and any collector using non-contiguous generations) so that concurrent discovery and STW discovery discover on strictly disjoint memory areas. This means that the mentioned situation can not occur any more, and extra work is not required any more too.

Reviewed-by: kbarrett, sjohanss
2018-05-03 14:09:00 +02:00
Stefan Johansson
7f7d103c85 8191471: Elastic TLABs for G1
Reviewed-by: tschatzl, pliden
2018-05-02 13:44:46 +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
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
Per Lidén
ec504ecf84 8201362: Remove CollectedHeap::barrier_set()
Reviewed-by: shade, rkennke
2018-04-12 11:22:24 +02:00
Stefan Karlsson
f0f7a1b70d 8201168: Move GC command line constraint functions to GC specific files
Reviewed-by: gziemski, sjohanss
2018-04-10 12:17:16 +02:00
Stefan Karlsson
906806e067 8200759: Move GC entries in vmStructs.cpp to GC specific files
Reviewed-by: sjohanss, shade
2018-04-10 12:15:07 +02: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
Stefan Karlsson
14a142ba14 8201136: Move GC flags from globals.hpp to GC specific files
Reviewed-by: sjohanss, shade, rehn
2018-04-06 13:55:25 +02:00
Per Lidén
24273f04a4 8199925: Break out GC selection logic from GCArguments to GCConfig
Reviewed-by: eosterlund, rkennke
2018-03-28 11:38:47 +02:00
Per Lidén
3b7962d614 8199918: Shorten names of CollectedHeap::Name members
Reviewed-by: shade, eosterlund
2018-03-28 11:38:47 +02:00
Coleen Phillimore
b541d9ad77 8200276: Cleanup allocation.hpp includes
Reviewed-by: stefank, hseigel
2018-03-27 11:53:23 -04:00
Stefan Karlsson
1a1aecd166 8200106: Move NoSafepointVerifier out from gcLocker.hpp
Reviewed-by: coleenp
2018-03-23 18:54:12 +01:00
Stefan Karlsson
f89abe4589 8199946: Move load/store and encode/decode out of oopDesc
Reviewed-by: eosterlund, coleenp, tschatzl
2018-03-15 21:24:10 +01:00
Erik Österlund
0f92948d6f 8199604: Rename CardTableModRefBS to CardTableBarrierSet
Reviewed-by: stefank, pliden
2018-03-19 07:38:18 +01:00
Coleen Phillimore
ec14629449 8199716: Unused AdjustKlassClosure in psParallelCompact.hpp
Reviewed-by: stefank
2018-03-16 08:26:53 -04:00
Coleen Phillimore
394e34d821 8199282: Remove ValueObj class for allocation subclassing for gc code
Reviewed-by: stefank, kbarrett
2018-03-14 07:27:19 -04:00
Thomas Stuefe
da674f0d0d 8199430: Rename MetaspaceAux to something more meaningful
Reviewed-by: zgu, coleenp
2018-03-11 07:11:03 +01:00
Stefan Karlsson
d42acfd37b 8199319: Remove handles.inline.hpp include from reflectionUtils.hpp
Reviewed-by: hseigel, dholmes
2018-03-08 19:10:25 +01:00
Stefan Karlsson
b9f2f3e199 8199275: Fix inclusions of allocation.inline.hpp
Reviewed-by: coleenp, kbarrett, dholmes
2018-03-08 09:56:29 +01:00
Erik Österlund
95d34d138d 8195142: Refactor out card table from CardTableModRefBS to flatten the BarrierSet hierarchy
Reviewed-by: stefank, coleenp, kvn, ehelin
2018-02-26 09:34:12 +01:00
Stefan Karlsson
3ad60c1bd2 8198530: Move _gc_policy_counters from GenCollectorPolicy to GenCollectedHeap
Reviewed-by: kbarrett, sjohanss
2018-02-22 18:37:48 +01:00
Stefan Karlsson
f408526f30 8198515: Extract SoftReferencePolicy code out of CollectorPolicy
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:07 +01:00
Erik Österlund
432a71e564 8198286: Direct memory accessors in typeArrayOop.hpp should use Access API
Reviewed-by: pliden, rkennke
2018-02-22 10:39:42 +01:00
Erik Österlund
0fb7dffb83 8195103: Refactor out card table from CardTableModRefBS to flatten the BarrierSet hierarchy
Reviewed-by: kbarrett, tschatzl
2018-01-10 22:48:27 +01:00
Kim Barrett
7f0f329daf 8194691: Cleanup unnecessary casts in Atomic/OrderAccess uses
Removed unnecessary casts.

Reviewed-by: coleenp, tschatzl
2018-02-11 03:12:15 -05:00
Coleen Phillimore
aa51ac19b3 8196199: Remove miscellaneous oop comparison operators
Co-authored-by: Kim Barrett <kim.barrett@oracle.com>
Reviewed-by: hseigel, lfoltan
2018-02-01 13:30:53 -05:00
Kim Barrett
9e5bf18428 8194406: Use Atomic::replace_if_null
Reviewed-by: coleenp, dholmes
2018-01-04 18:18:18 -05:00
Roman Kennke
3f3f0cb67e 8191564: Refactor GC related servicability code into GC specific subclasses
Reviewed-by: ehelin, eosterlund
2017-11-30 13:40:07 +01:00
Stefan Karlsson
58dd5210ec 8192061: Clean up allocation.inline.hpp includes
Reviewed-by: eosterlund, coleenp
2017-11-28 21:43:45 +01:00
Sangheon Kim
8a150bbd05 8178497: Bug in MutableNUMASpace::ensure_parsability
Changed problematic variable type from intptr_t to HeapWord*

Reviewed-by: tschatzl, sjohanss
2017-11-27 13:19:08 -08:00
Erik Helin
01e9cb7e23 8080345: With perm gen gone, perfdata counter sun.gc.policy.generations should be 2, not 3
Co-authored-by: Y. Srinivas Ramakrishna <ysr1729@gmail.com>
Reviewed-by: sjohanss, tschatzl
2017-11-27 10:51:31 +01:00
Daniel D. Daugherty
0dff96ff0b 8167108: inconsistent handling of SR_lock can lead to crashes
Add Thread Safe Memory Reclamation (Thread-SMR) mechanism.

Co-authored-by: Erik Osterlund <erik.osterlund@oracle.com>
Co-authored-by: Robbin Ehn <robbin.ehn@oracle.com>
Reviewed-by: coleenp, dcubed, dholmes, eosterlund, gthornbr, kbarrett, rehn, sspitsyn, stefank
2017-11-22 17:54:50 -08:00
Erik Österlund
3e5e2f03b1 8189871: Refactor GC barriers to use declarative semantics
Reviewed-by: pliden, rkennke, coleenp, dholmes, kbarrett, stefank
2017-11-20 13:07:44 +01:00
Roman Kennke
c45098982f 8189389: Move heap creation into GC interface
Reviewed-by: pliden, eosterlund
2017-11-16 12:53:29 +01:00
Roman Kennke
09a9ab8f41 8189171: Move GC argument processing into GC specific classes
Reviewed-by: pliden, eosterlund
2017-11-07 11:58:52 +01:00
Jamsheed Mohammed C M
10a1edcc22 8152470: Add COMPILER2_OR_JVMCI definition
Defined(COMPILER2) || INCLUDE_JVMCI changed replaced with COMPILER2_OR_JVMCI

Reviewed-by: kvn
2017-11-06 21:28:03 -08:00
Stefan Karlsson
d129d1cdf2 8189748: More precise closures for WeakProcessor::weak_oops_do calls
Reviewed-by: pliden, sjohanss
2017-10-23 11:20:53 +02:00
Stefan Karlsson
3fbc4aec64 8189359: Move native weak oops cleaning out of ReferenceProcessor
Reviewed-by: pliden, kbarrett
2017-10-18 21:13:35 +02:00
Coleen Phillimore
39b068db11 8188220: Remove Atomic::*_ptr() uses and overloads from hotspot
With the new template functions these are unnecessary.

Reviewed-by: kbarrett, dholmes, eosterlund
2017-10-16 22:36:06 -04:00
Erik Österlund
ebf1633bd2 8185141: Generalize scavengeable nmethod root handling
Reviewed-by: tschatzl, pliden, rkennke
2017-10-13 15:08:56 +02:00
Coleen Phillimore
73a801bc43 8186777: Make Klass::_java_mirror an OopHandle
Add indirection for fetching mirror so that GC doesn't have to follow CLD::_klasses

Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Reviewed-by: hseigel, thartmann, eosterlund, stefank
2017-10-03 16:42:04 -04:00
Erik Österlund
394e6a8318 8186838: Generalize Atomic::inc/dec with templates
Reviewed-by: kbarrett, coleenp, dholmes
2017-09-26 14:05:27 +02:00