Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8244328

Shenandoah: move ShenandoahThreadLocalData::_disarmed_value initialization

    XMLWordPrintable

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b22

      Backports

        Description

        Current definition of ShenandoahThreadLocalData is odd:

          static void initialize_gclab(Thread* thread) {
            assert (thread->is_Java_thread() || thread->is_Worker_thread(), "Only Java and GC worker threads are allowed to get GCLABs");
            assert(data(thread)->_gclab == NULL, "Only initialize once");
            data(thread)->_gclab = new PLAB(PLAB::min_size());
            data(thread)->_gclab_size = 0;
            data(thread)->_disarmed_value = ShenandoahCodeRoots::disarmed_value();
          }

        Why does initialize_gclab initializes _disarmed_value? It should get its own setter.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                zgu Zhengyu Gu
                Reporter:
                shade Aleksey Shipilev
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: