550 \
551 product(bool, ShenandoahSATBBarrier, true, DIAGNOSTIC, \
552 "Turn on/off SATB barriers in Shenandoah") \
553 \
554 product(bool, ShenandoahCardBarrier, false, DIAGNOSTIC, \
555 "Turn on/off card-marking post-write barrier in Shenandoah: " \
556 " true when ShenandoahGCMode is generational, false otherwise") \
557 \
558 product(bool, ShenandoahCASBarrier, true, DIAGNOSTIC, \
559 "Turn on/off CAS barriers in Shenandoah") \
560 \
561 product(bool, ShenandoahCloneBarrier, true, DIAGNOSTIC, \
562 "Turn on/off clone barriers in Shenandoah") \
563 \
564 product(bool, ShenandoahLoadRefBarrier, true, DIAGNOSTIC, \
565 "Turn on/off load-reference barriers in Shenandoah") \
566 \
567 product(bool, ShenandoahStackWatermarkBarrier, true, DIAGNOSTIC, \
568 "Turn on/off stack watermark barriers in Shenandoah") \
569 \
570 develop(bool, ShenandoahVerifyOptoBarriers, trueInDebug, \
571 "Verify no missing barriers in C2.") \
572 \
573 product(uintx, ShenandoahOldCompactionReserve, 8, EXPERIMENTAL, \
574 "During generational GC, prevent promotions from filling " \
575 "this number of heap regions. These regions are reserved " \
576 "for the purpose of supporting compaction of old-gen " \
577 "memory. Otherwise, old-gen memory cannot be compacted.") \
578 range(0, 128) \
579 \
580 product(bool, ShenandoahAllowOldMarkingPreemption, true, DIAGNOSTIC, \
581 "Allow young generation collections to suspend concurrent" \
582 " marking in the old generation.") \
583 \
584 product(uintx, ShenandoahAgingCyclePeriod, 1, EXPERIMENTAL, \
585 "With generational mode, increment the age of objects and" \
586 "regions each time this many young-gen GC cycles are completed.") \
587 \
588 develop(bool, ShenandoahEnableCardStats, false, \
589 "Enable statistics collection related to clean & dirty cards") \
|
550 \
551 product(bool, ShenandoahSATBBarrier, true, DIAGNOSTIC, \
552 "Turn on/off SATB barriers in Shenandoah") \
553 \
554 product(bool, ShenandoahCardBarrier, false, DIAGNOSTIC, \
555 "Turn on/off card-marking post-write barrier in Shenandoah: " \
556 " true when ShenandoahGCMode is generational, false otherwise") \
557 \
558 product(bool, ShenandoahCASBarrier, true, DIAGNOSTIC, \
559 "Turn on/off CAS barriers in Shenandoah") \
560 \
561 product(bool, ShenandoahCloneBarrier, true, DIAGNOSTIC, \
562 "Turn on/off clone barriers in Shenandoah") \
563 \
564 product(bool, ShenandoahLoadRefBarrier, true, DIAGNOSTIC, \
565 "Turn on/off load-reference barriers in Shenandoah") \
566 \
567 product(bool, ShenandoahStackWatermarkBarrier, true, DIAGNOSTIC, \
568 "Turn on/off stack watermark barriers in Shenandoah") \
569 \
570 product(bool, ShenandoahCloneRuntime, false, DIAGNOSTIC, \
571 "Handle clone in runtime instead of in copy stubs.") \
572 \
573 product(bool, ShenandoahGCStateCheckHotpatch, false, EXPERIMENTAL, \
574 "DANGEROUS, USE ONLY WITH PASSIVE MODE: Replace GC state checks " \
575 "with hot-patchable sequence in barrier fast-paths. Measures " \
576 "potential improvement from GC state hot-patching.") \
577 \
578 product(bool, ShenandoahGCStateCheckRemove, false, EXPERIMENTAL, \
579 "DANGEROUS, USE ONLY WITH PASSIVE MODE: Remove GC state checks " \
580 "in barrier fast-paths. Measures code density impact from GC " \
581 "state checks.") \
582 \
583 product(bool, ShenandoahSkipBarriers, false, EXPERIMENTAL, \
584 "DANGEROUS, USE ONLY WITH PASSIVE MODE: Skip all barriers after " \
585 "expansion. Measures code density impact from additional code " \
586 "at both fast- and slow-paths.") \
587 \
588 develop(bool, ShenandoahVerifyOptoBarriers, trueInDebug, \
589 "Verify no missing barriers in C2.") \
590 \
591 product(uintx, ShenandoahOldCompactionReserve, 8, EXPERIMENTAL, \
592 "During generational GC, prevent promotions from filling " \
593 "this number of heap regions. These regions are reserved " \
594 "for the purpose of supporting compaction of old-gen " \
595 "memory. Otherwise, old-gen memory cannot be compacted.") \
596 range(0, 128) \
597 \
598 product(bool, ShenandoahAllowOldMarkingPreemption, true, DIAGNOSTIC, \
599 "Allow young generation collections to suspend concurrent" \
600 " marking in the old generation.") \
601 \
602 product(uintx, ShenandoahAgingCyclePeriod, 1, EXPERIMENTAL, \
603 "With generational mode, increment the age of objects and" \
604 "regions each time this many young-gen GC cycles are completed.") \
605 \
606 develop(bool, ShenandoahEnableCardStats, false, \
607 "Enable statistics collection related to clean & dirty cards") \
|