nmethod entry barriers of new nmethods should be disarmed

XMLWordPrintable

    • gc
    • b13

      We're using nmethod entry barriers regardless of GC selection since JDK-8290025.
      ZGC calls disarm(nm) in ZNMethod::register_nmethod(nmethod* nm). That disables the barrier for new nmethods before their first execution.
      ShenandoahGC also calls a disarm function in ShenandoahNMethodTable::register_nmethod(nmethod* nm).

      Such a disarm is missing for other GCs. That causes unnecessary execution of the barriers after new nmethods are installed into the code cache.

      Total execution of nmethod entry barrier code and patching during concurrent execution can be reduced significantly.

            Assignee:
            Martin Doerr
            Reporter:
            Martin Doerr
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: