JDK-8297426 : gcc11 linux ppc64le this-pointer is null warning [-Werror=nonnull]
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 20
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: linux
  • CPU: ppc
  • Submitted: 2022-11-22
  • Updated: 2022-11-22
  • Resolved: 2022-11-22
Related Reports
Duplicate :  
Description
When trying to build  jdk on linux ppc64le with gcc11, we run into these warnings (as errors) :

/open_jdk/jdk_3/jdk/src/hotspot/cpu/ppc/assembler_ppc.inline.hpp:864:113: error: 'this' pointer is null [-Werror=nonnull]
  864 | inline void Assembler::mtvrwz(  VectorRegister  d, Register a)               { emit_int32( MTVSRWZ_OPCODE | vsrt(d->to_vsr()) | ra(a)); }
      |                                                                                                             ~~~~^~~~~~~~~~~~~

 In member function 'void MacroAssembler::sha256_update_sha_state(VectorRegister, VectorRegister, VectorRegister, VectorRegister, VectorRegister, VectorRegister, VectorRegister, VectorRegister, Register)':
/open_jdk/jdk_3/jdk/src/hotspot/cpu/ppc/macroAssembler_ppc_sha.cpp:346:11: error: 'this' pointer is null [-Werror=nonnull]
  346 |   xxswapd (vt0->to_vsr(), a->to_vsr());
      |   ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~

/open_jdk/jdk_3/jdk/src/hotspot/cpu/ppc/register_ppc.hpp:431:19: note: in a call to non-static member function 'VectorSRegisterImpl* VectorRegisterImpl::to_vsr() const'
  431 |   VectorSRegister to_vsr() const;
      |                   ^~~~~~

/open_jdk/jdk_3/jdk/src/hotspot/cpu/ppc/macroAssembler_ppc_sha.cpp:347:11: error: 'this' pointer is null [-Werror=nonnull]
  347 |   stxvd2x (vt0->to_vsr(), hptr);
      |   ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
   ... (rest of output omitted)


The gcc-10  (or gcc-8) compiler seems to still work nicely and does not show these issues.