RFR: 8256754: Deoptimization::revoke_for_object_deoptimization: stack processing start call is redundant

Richard Reingruber rrich at openjdk.java.net
Mon Nov 23 15:30:00 UTC 2020


This is a XS clean-up of Deoptimization::revoke_for_object_deoptimization() which removes the StackWatermarkSet::start_processing() call.

This is correct because all paths leading to revoke_for_object_deoptimization() are equipped with a KeepStackGCProcessedMark.

Call Tree:

StackWatermarkSet::start_processing(JavaThread *, enum StackWatermarkKind) : void
    Deoptimization::revoke_for_object_deoptimization(JavaThread *, frame, RegisterMap *, JavaThread *) : void
        Deoptimization::deoptimize_objects_internal(JavaThread *, GrowableArray<compiledVFrame *> *, bool &) : bool
            EscapeBarrier::deoptimize_objects_internal(JavaThread *, intptr_t *) : bool
                EscapeBarrier::deoptimize_objects_all_threads() : bool                     // has KeepStackGCProcessedMark
                EscapeBarrier::deoptimize_objects(intptr_t *) : bool
                    EscapeBarrier::deoptimize_objects(int, int) : bool                     // has KeepStackGCProcessedMark 

Testing: hotspot_serviceability, jdk_svc, jdk_jdi, vmTestbase_nsk_jdi, vmTestbase_nsk_jvmti, vmTestbase_nsk_jdwp with -XX:+UseZGC.

-------------

Commit messages:
 - 8256754: Deoptimization::revoke_for_object_deoptimization: stack processing start call is redundant

Changes: https://git.openjdk.java.net/jdk/pull/1381/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1381&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8256754
  Stats: 4 lines in 1 file changed: 0 ins; 4 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1381.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1381/head:pull/1381

PR: https://git.openjdk.java.net/jdk/pull/1381


More information about the hotspot-dev mailing list