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

G1: interpreter post-barrier x86 code asserts index size of wrong buffer

XMLWordPrintable

    • gc
    • b18
    • x86, x86_64

        The following assertion within G1BarrierSetAssembler::g1_write_barrier_post() in src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp:

        // Generated code assumes that buffer index is pointer sized.
          STATIC_ASSERT(in_bytes(SATBMarkQueue::byte_width_of_index()) == sizeof(intptr_t));

        refers to the size of the index of the SATBMarkQueue buffer, which is unused in the post-barrier. It should probably refer instead to G1DirtyCardQueue::byte_width_of_index().

        This issue was found by [~kbarrett].

              rcastanedalo Roberto Castaneda Lozano
              rcastanedalo Roberto Castaneda Lozano
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: