RFR: 8348207: Linux PPC64 PCH build broken after JDK-8347909

Matthias Baesken mbaesken at openjdk.org
Fri Jan 24 08:12:49 UTC 2025


On Fri, 24 Jan 2025 06:28:07 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> make/hotspot/lib/JvmOverrideFiles.gmk line 61:
>> 
>>> 59:       sharedRuntimeTrig.cpp \
>>> 60:       sharedRuntimeTrans.cpp \
>>> 61:       $(OPT_SPEED_SRC) \
>> 
>> Note that OPT_SPEED_SRC contains a rather large set of files. They have previously been compiling using PCH just fine with gcc. I don't think it is motivated to exclude them everywhere, just because gcc on ppc64 has a problem.
>
> I agree with Magnus the files should only be excluded where there is a problem and for PPC the problem can be fixed by using the same `-m` flag (or else fixing the build logic to check for PPC as Magnus has).
> 
> As far as I can see PCH has been used with these files on Linux and gcc with no problem for other architectures. I'm still unclear exactly what changed for PPC.

> Note that OPT_SPEED_SRC contains a rather large set of files. They have previously been compiling using PCH just fine with gcc. I don't think it is motivated to exclude them everywhere, just because gcc on ppc64 has a problem.

It seems usually it is empty, because in 99% of cases  people will not set the opt-size jvm feature 


193 ifeq ($(call check-jvm-feature, opt-size), true)
194   JVM_OPTIMIZATION := SIZE
195   OPT_SPEED_SRC := \
196       allocation.cpp \


I haven't checked what happens with those recent PCH changes, when opt-size is configured.  If it works I am fine with your approach too that does not  add those to  JVM_PRECOMPILED_HEADER_EXCLUDE .

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/23268#discussion_r1928294580


More information about the build-dev mailing list