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

[PPC64] ZGC C2 load barrier stub needs to preserve vector registers

XMLWordPrintable

    • b06
    • ppc

        JDK-8289856 has uncovered a PPC64 bug which affects ZGC C2 load barriers:
        # Internal Error (src/hotspot/cpu/ppc/gc/z/zBarrierSetAssembler_ppc.cpp:485), pid=3200250, tid=3200674
        # fatal error: Register type is not known

        V [libjvm.so+0x1bf4944] ZSaveLiveRegisters::iterate_over_register_mask(ZSaveLiveRegisters::IterationAction)+0x5b4
        V [libjvm.so+0x1bf1f54] ZBarrierSetAssembler::generate_c2_load_barrier_stub(MacroAssembler*, ZLoadBarrierStubC2*) const+0xf4
        V [libjvm.so+0x1bf8b98] ZBarrierSetC2::emit_stubs(CodeBuffer&) const+0x128

        Vector registers may be live and get killed by ZGC load barrier stub.
        Workaround: Use -XX:-SuperwordUseVSX when enabling ZGC.

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

                Created:
                Updated:
                Resolved: