JDK-8356122 : Client build fails after JDK-8350209
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 25
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: linux
  • CPU: generic
  • Submitted: 2025-05-04
  • Updated: 2025-05-05
  • Resolved: 2025-05-05
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 25
25 masterFixed
Related Reports
Causes :  
Description
Client build fails on both x86 and aarch64 in my test environment.

1. client build

How to reproduce it:

configure --with-debug-level=release --with-jvm-variants=client

Error message:

=== Output from failing command(s) repeated here ===
* For target hotspot_variant-client_libjvm_objs_aotCodeCache.o:
~/jdk-src/src/hotspot/share/code/aotCodeCache.cpp: In member function ‘void AOTCodeAddressTable::init_extrs()’:
~/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:1024:39: error: incomplete type ‘MacroAssembler’ used in nested name specifier
 1024 |   SET_ADDRESS(_extrs, MacroAssembler::debug64);
      |                                       ^~~~~~~
~/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:991:47: note: in definition of macro ‘SET_ADDRESS’
  991 |     type##_addr[type##_length++] = (address) (addr);      \
      |                                               ^~~~

* All command lines available in /tmp/make-support/failure-logs.
=== End of repeated output ===

2. client build without PCH

How to reproduce it

configure --with-debug-level=release --with-jvm-variants=client --disable-precompiled-headers

Error message:

=== Output from failing command(s) repeated here ===
* For target hotspot_variant-client_libjvm_objs_aotCodeCache.o:
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp: In function ‘void copy_bytes(const char*, address, uint)’:
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:399:5: error: ‘Copy’ has not been declared
  399 |     Copy::disjoint_words((HeapWord*)from,
      |     ^~~~
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:404:5: error: ‘Copy’ has not been declared
  404 |     Copy::conjoint_jbytes(from, to, (size_t)size);
      |     ^~~~
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp: In member function ‘void AOTCodeAddressTable::init_extrs()’:
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:1024:39: error: incomplete type ‘MacroAssembler’ used in nested name specifier
 1024 |   SET_ADDRESS(_extrs, MacroAssembler::debug64);
      |                                       ^~~~~~~
/tmp/jdk-src/src/hotspot/share/code/aotCodeCache.cpp:991:47: note: in definition of macro ‘SET_ADDRESS’
  991 |     type##_addr[type##_length++] = (address) (addr);      \
      |                                               ^~~~

* All command lines available in /tmp/build-release/make-support/failure-logs.
=== End of repeated output ===

Comments
A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/25030 Date: 2025-05-05 09:49:41 +0000
05-05-2025

Thanks, I'll take care of this, I did the fixes for this downstream in Leyden.
05-05-2025

Changeset: 1501a5e4 Branch: master Author: Aleksey Shipilev <shade@openjdk.org> Date: 2025-05-05 12:51:02 +0000 URL: https://git.openjdk.org/jdk/commit/1501a5e41e59162a374cf5b8cfc37faced48a6ed
05-05-2025

ILW = Client build failure, always, no workaround = MHH = P2
05-05-2025