Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge to tag jdk-25+8 #1910

Open
wants to merge 101 commits into
base: sapmachine
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
66513dd
8337997: MallocHeader description refers to non-existent NMT state "m…
caspernorrbin Jan 23, 2025
e69e5b7
8348324: The failure handler cannot be build by JDK 24 due to restric…
magicus Jan 23, 2025
caa3c78
8347965: (tz) Update Timezone Data to 2025a
johnyjose30 Jan 23, 2025
6032f6e
8341696: C2: Non-fluid StringBuilder pattern bails out in OptoStringC…
Jan 23, 2025
c882160
8344966: Remove the allowNonPublic MBean compatibility property
kevinjwalls Jan 23, 2025
3069e91
8344969: Remove the jmx.mxbean.multiname compatibility property
kevinjwalls Jan 23, 2025
337118d
8348388: Incorrect copyright header in TestFluidAndNonFluid.java
Jan 23, 2025
17df515
8348303: Remove repeated 'a' from ListSelectionEvent
aivanov-jdk Jan 23, 2025
89bfcb8
8348308: Make fields of ListSelectionEvent final
aivanov-jdk Jan 23, 2025
119899b
8345048: Remove the jmx.extend.open.types compatibility property
kevinjwalls Jan 23, 2025
8b46db0
8345045: Remove the jmx.remote.x.buffer.size JMX notification property
kevinjwalls Jan 23, 2025
c00557f
8345049: Remove the jmx.tabular.data.hash.map compatibility property
kevinjwalls Jan 23, 2025
5cc690d
8347994: Add additional diagnostics to macOS failure handler to assis…
serhiysachkov Jan 23, 2025
7460a0a
8348392: Make claims "other matches are possible" even when that is n…
magicus Jan 23, 2025
44e5cca
8348391: Keep case if possible for TOPDIR
magicus Jan 23, 2025
cba0f78
8348387: Add fixpath if needed for user-supplied tools
magicus Jan 23, 2025
605b53e
8348299: Update List/ItemEventTest/ItemEventTest.java
aivanov-jdk Jan 23, 2025
59e7509
8348301: Remove unused Reference.waitForReferenceProcessing break-ins…
shipilev Jan 23, 2025
d9d2e19
8348365: Bad format string in CLDRDisplayNamesTest
cushon Jan 23, 2025
3ebf889
8348327: Incorrect march flag when building libsleef/vector_math_neon.c
vidmik Jan 23, 2025
356e2a8
8348406: Remove tests GrantAllPermToExtWhenNoPolicy and PrincipalExpa…
myankelev Jan 23, 2025
48ece07
8282862: AwtWindow::SetIconData leaks old icon handles if an exceptio…
rajamah Jan 23, 2025
7f16a08
8348240: Remove SystemDictionaryShared::lookup_super_for_unregistered…
iklam Jan 23, 2025
471d63c
8343609: Broken links in java.xml
JoeWang-Java Jan 24, 2025
416d469
8347008: beancontext package spec does not clearly explain why the AP…
Jan 24, 2025
50ca450
8340784: Remove PassFailJFrame constructor with screenshots
anass-baya Jan 24, 2025
2daafe4
8348283: java.lang.classfile.components.snippets.PackageSnippets ship…
asotona Jan 24, 2025
0395593
8346751: Internal java compiler error with type annotations in consta…
lahodaj Jan 24, 2025
a09f06d
8348265: RMIConnectionImpl: Remove Subject.callAs on MarshalledObject
kevinjwalls Jan 24, 2025
0df9dcb
8346572: Check is_reserved() before using ReservedSpace instances
stefank Jan 24, 2025
4a375e5
8344232: [PPC64] secondary_super_cache does not scale well: C1 and in…
TheRealMDoerr Jan 24, 2025
5a0bdd0
8346890: AArch64: Type profile counters generate suboptimal code
Jan 24, 2025
e20bd01
8344361: Restore null return for invalid services from legacy providers
coffeys Jan 24, 2025
9c55e25
8347981: RISC-V: Add Zfa zli imm loads
robehn Jan 24, 2025
c5a69b6
8331723: Serial: Remove the unused parameter of the method SerialHeap…
lgxbslgx Jan 24, 2025
9768f60
8345249: Apply some conservative cleanups in FileURLConnection
Jan 24, 2025
56a1877
8348170: Unnecessary Hashtable usage in CSS.styleConstantToCssMap
Jan 24, 2025
909cef5
8339891: Several sun/security/ssl/SSLSessionImpl/* tests override tes…
Jan 24, 2025
76f792b
8348203: [JVMCI] Make eager JVMCI initialization observable in the de…
simonis Jan 24, 2025
8e8f800
8344943: Mark not subclassable classes final in java.base exported cl…
Jan 24, 2025
bef5f56
8291027: Some of TimeZone methods marked 'synchronized' unnecessarily
Jan 24, 2025
dec9367
8347498: JDK 24 RDP2 L10n resource files update
Jan 24, 2025
907350e
8346587: Distrust TLS server certificates anchored by Camerfirma Root…
Jan 24, 2025
f8e81d2
8347506: Compatible OCSP readtimeout property with OCSP timeout
Jan 24, 2025
7c0985f
8348420: Shenandoah: Check is_reserved before using ReservedSpace ins…
Jan 24, 2025
f446cef
8343962: [REDO] Move getChars to DecimalDigits
wenshao Jan 25, 2025
1d2eb2f
8299504: Resolve `uses` and `provides` at run time if the service is …
Jan 25, 2025
5431668
8348212: Need to add warn() step to JavacTaskImpl after JDK-8344148
archiecobbs Jan 25, 2025
99002e4
8318098: Update jfr tests to replace keyword jfr with vm.flagless
lmesnik Jan 25, 2025
002679a
8347065: Add missing @spec tags for Java Security Standard Algorithm …
koushikthirupattur Jan 25, 2025
a1fd5f4
8348554: Enhance Linux kernel version checks
robehn Jan 27, 2025
70eec90
8338303: Linux ppc64le with toolchain clang - detection failure in ea…
MBaesken Jan 27, 2025
b8c68c0
8348207: Linux PPC64 PCH build broken after JDK-8347909
MBaesken Jan 27, 2025
175e58b
8332980: [IR Framework] Add option to measure IR rule processing time
Jan 27, 2025
afcc2b0
8348562: ZGC: segmentation fault due to missing node type check in ba…
TheRealMDoerr Jan 27, 2025
ffeb9b5
8342807: Update links in java.base to use https://
Jan 27, 2025
f1e0797
8348586: Optionally silence make warnings about non-control variables
magicus Jan 27, 2025
7d6055a
8348429: Update cross-compilation devkits to Fedora 41/gcc 13.2
magicus Jan 27, 2025
1d8ccb8
8342465: Improve API documentation for java.lang.classfile
liach Jan 27, 2025
ad01dfb
8346920: Serial: Support allocation in old generation when heap is al…
albertnetymk Jan 27, 2025
03106eb
8344119: CUPSPrinter does not respect PostScript printer definition s…
GennadiyKrivoshein Jan 27, 2025
aba60a9
8189441: Define algorithm names for keys derived from KeyAgreement
wangweij Jan 27, 2025
039e73f
8346736: Java Security Standard Algorithm Names spec should include k…
wangweij Jan 27, 2025
8cc1304
8287788: Implement a better allocator for downcalls
mernst-github Jan 27, 2025
21feef3
8348239: SA does not know about DeoptimizeObjectsALotThread
plummercj Jan 27, 2025
1916a77
8346923: MetaspaceShared base calculation may cause overflow in align_up
calvinccheung Jan 27, 2025
46f48e4
8348515: Add docs for -XX:AOT* options in java man pages
iklam Jan 28, 2025
2537a05
8348384: RISC-V: Disable auto-enable Vector on buggy kernels
robehn Jan 28, 2025
f71541c
8344976: Remove the jmx.invoke.getters compatibility property
kevinjwalls Jan 28, 2025
1f74caa
8348401: [IR Framework] PrintTimes should not require verbose
Jan 28, 2025
558255a
8328919: Add BodyHandlers / BodySubscribers methods to handle excessi…
Jan 28, 2025
a4942a2
8348286: [AIX] clang 17 introduces new warning Wtentative-Definitions…
Jan 28, 2025
3a8680e
8347058: When automatically translating the page to pt-br, all CSS st…
nizarbenalla Jan 28, 2025
2bef5b4
8348323: Corrupted timezone string in JVM crash log
Jan 28, 2025
5fec999
8339668: Parallel: Adopt PartialArrayState to consolidate marking sta…
zhengyu123 Jan 28, 2025
fb066ca
8347272: [ubsan] JvmLauncher.cpp:262:52: runtime error: applying non-…
Jan 28, 2025
8103256
8348348: Remove unnecessary #ifdef STATIC_BUILD around DEF_STATIC_JNI…
jianglizhou Jan 28, 2025
a224f12
8348205: Improve cutover time selection when building available curre…
Jan 28, 2025
9f4d3de
8347718: Unexpected NullPointerException in C2 compiled code due to R…
Jan 28, 2025
c3c3888
8336760: [JVMCI] -XX:+PrintCompilation should also print "hosted" JVM…
Jan 28, 2025
c018a60
8344637: Fix Page8 of manual test java/awt/print/PrinterJob/PrintText…
Jan 28, 2025
1efae9a
8348888: tier1 closed build failure on Windows after JDK-8348348
jianglizhou Jan 28, 2025
3a564ed
8347955: TimeZone methods to stream the available timezone IDs
Jan 28, 2025
5e81fa6
8348892: Properly fix compilation error for zip_util.c on Windows
Jan 28, 2025
98a93e1
8348800: Many serviceability/sa tests failing after JDK-8348239
plummercj Jan 28, 2025
55c3e78
8348631: Crash in PredictedCallGenerator::generate after JDK-8347006
TobiHartmann Jan 29, 2025
168a471
8348830: LIBFONTMANAGER optimization is always HIGHEST
MBaesken Jan 29, 2025
3af4cfc
8348180: Remove mention of include of precompiled.hpp from the HotSpo…
stefank Jan 29, 2025
69ec453
8347985: Deprecate java.management Permission classes for removal
kevinjwalls Jan 29, 2025
fff97d6
8343938: TestStressBailout triggers "Should not be locked when freed"…
Jan 29, 2025
fe6d9ab
8348582: Set -fstack-protector when building with clang
MBaesken Jan 29, 2025
f98d9a3
8348870: Eliminate array bound checks in DecimalDigits
wenshao Jan 29, 2025
6bfae3a
8333386: TestAbortOnVMOperationTimeout test fails for client VM
lgxbslgx Jan 29, 2025
51cce6e
8318577: Windows Look-and-Feel JProgressBarUI does not render correct…
prsadhuk Jan 29, 2025
96fefed
8319850: PrintInlining should print which methods are late inlines
Jan 29, 2025
cbc89a7
8348898: Remove unused OctalDigits to clean up code
wenshao Jan 29, 2025
d266ca9
8348752: Enable -XX:+AOTClassLinking by default when -XX:AOTMode is s…
iklam Jan 29, 2025
4662363
8348687: [BACKOUT] C2: Non-fluid StringBuilder pattern bails out in O…
Jan 29, 2025
6b581d2
8347997: assert(false) failed: EA: missing memory path
Jan 29, 2025
cbe9ec5
8348905: Add support to specify the JDK for compiling Jtreg tests
jianglizhou Jan 29, 2025
d985b31
8342096: Popup menus that request focus are not shown on Linux with W…
Jan 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion bin/idea.sh
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ if [ "$VERBOSE" = "true" ] ; then
echo "idea template dir: $IDEA_TEMPLATE"
fi

cd $TOP ; make idea-gen-config IDEA_OUTPUT=$IDEA_OUTPUT MODULES="$*" $CONF_ARG || exit 1
cd $TOP ; make idea-gen-config ALLOW=IDEA_OUTPUT,MODULES IDEA_OUTPUT=$IDEA_OUTPUT MODULES="$*" $CONF_ARG || exit 1
cd $SCRIPT_DIR

. $IDEA_OUTPUT/env.cfg
Expand Down
8 changes: 4 additions & 4 deletions doc/hotspot-style.html
Original file line number Diff line number Diff line change
Expand Up @@ -217,10 +217,10 @@ <h3 id="source-files">Source Files</h3>
should be put in the .hpp file, and not in the .inline.hpp file. This
rule exists to resolve problems with circular dependencies between
.inline.hpp files.</p></li>
<li><p>All .cpp files include precompiled.hpp as the first include
line.</p></li>
<li><p>precompiled.hpp is just a build time optimization, so don't rely
on it to resolve include problems.</p></li>
<li><p>Some build configurations use precompiled headers to speed up the
build times. The precompiled headers are included in the precompiled.hpp
file. Note that precompiled.hpp is just a build time optimization, so
don't rely on it to resolve include problems.</p></li>
<li><p>Keep the include lines alphabetically sorted.</p></li>
<li><p>Put conditional inclusions (<code>#if ...</code>) at the end of
the include list.</p></li>
Expand Down
8 changes: 4 additions & 4 deletions doc/hotspot-style.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,10 +150,10 @@ the first include line. Declarations needed by other files should be put
in the .hpp file, and not in the .inline.hpp file. This rule exists to
resolve problems with circular dependencies between .inline.hpp files.

* All .cpp files include precompiled.hpp as the first include line.

* precompiled.hpp is just a build time optimization, so don't rely on
it to resolve include problems.
* Some build configurations use precompiled headers to speed up the
build times. The precompiled headers are included in the precompiled.hpp
file. Note that precompiled.hpp is just a build time optimization, so
don't rely on it to resolve include problems.

* Keep the include lines alphabetically sorted.

Expand Down
3 changes: 2 additions & 1 deletion make/Global.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2012, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -108,6 +108,7 @@ help:
$(info $(_) MICRO="OPT1=x;OPT2=y" # Control the MICRO test harness, use 'make test-only MICRO=help' to list)
$(info $(_) TEST_OPTS="OPT1=x;..." # Generic control of all test harnesses)
$(info $(_) TEST_VM_OPTS="ARG ..." # Same as setting TEST_OPTS to VM_OPTIONS="ARG ...")
$(info $(_) ALLOW="FOO,BAR" # Do not warn that FOO and BAR are non-control variables)
$(info )
$(if $(all_confs), $(info Available configurations in $(build_dir):) $(foreach var,$(all_confs),$(info * $(var))), \
$(info No configurations were found in $(build_dir).) $(info Run 'bash configure' to create a configuration.))
Expand Down
31 changes: 19 additions & 12 deletions make/InitSupport.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -48,12 +48,15 @@ ifeq ($(HAS_SPEC), )
# from the command-line.
##############################################################################

# Make control variables, handled by Init.gmk
INIT_CONTROL_VARIABLES += LOG CONF CONF_NAME SPEC JOBS TEST_JOBS CONF_CHECK \
COMPARE_BUILD JTREG GTEST MICRO TEST_OPTS TEST_VM_OPTS TEST_DEPS
# Essential control variables that are handled by Init.gmk
INIT_CONTROL_VARIABLES := LOG CONF CONF_NAME SPEC JOBS CONF_CHECK ALLOW \
COMPARE_BUILD

# All known make control variables
MAKE_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) TEST JDK_FILTER SPEC_FILTER
# All known make control variables; these are handled in other makefiles
MAKE_CONTROL_VARIABLES += JDK_FILTER SPEC_FILTER \
TEST TEST_JOBS JTREG GTEST MICRO TEST_OPTS TEST_VM_OPTS TEST_DEPS

ALL_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) $(MAKE_CONTROL_VARIABLES)

# Define a simple reverse function.
# Should maybe move to MakeBase.gmk, but we can't include that file now.
Expand Down Expand Up @@ -87,8 +90,10 @@ ifeq ($(HAS_SPEC), )
command_line_variables := $$(strip $$(foreach var, \
$$(subst \ ,_,$$(MAKEOVERRIDES)), \
$$(firstword $$(subst =, , $$(var)))))
allowed_command_line_variables := $$(strip $$(subst $$(COMMA), , $$(ALLOW)))
unknown_command_line_variables := $$(strip \
$$(filter-out $$(MAKE_CONTROL_VARIABLES), $$(command_line_variables)))
$$(filter-out $$(ALL_CONTROL_VARIABLES) $$(allowed_command_line_variables), \
$$(command_line_variables)))
ifneq ($$(unknown_command_line_variables), )
$$(info Note: Command line contains non-control variables:)
$$(foreach var, $$(unknown_command_line_variables), $$(info * $$(var)=$$($$(var))))
Expand Down Expand Up @@ -211,13 +216,15 @@ ifeq ($(HAS_SPEC), )
$$(if $$(findstring $$(CONF), $$(var)), $$(var))))
endif
ifneq ($$(filter $$(CONF), $$(matching_confs)), )
ifneq ($$(word 2, $$(matching_confs)), )
# Don't repeat this output on make restarts caused by including
# generated files.
ifeq ($$(MAKE_RESTARTS), )
$$(info Using exact match for CONF=$$(CONF) (other matches are possible))
endif
endif
# If we found an exact match, use that
matching_confs := $$(CONF)
# Don't repeat this output on make restarts caused by including
# generated files.
ifeq ($$(MAKE_RESTARTS), )
$$(info Using exact match for CONF=$$(CONF) (other matches are possible))
endif
endif
endif
ifeq ($$(matching_confs), )
Expand Down
4 changes: 4 additions & 0 deletions make/RunTests.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,9 @@ $(eval $(call IncludeCustomExtension, RunTests.gmk))

# This is the JDK that we will test
JDK_UNDER_TEST := $(JDK_IMAGE_DIR)
# The JDK used to compile jtreg test code. By default it is the same as
# JDK_UNDER_TEST.
JDK_FOR_COMPILE := $(JDK_IMAGE_DIR)

TEST_RESULTS_DIR := $(OUTPUTDIR)/test-results
TEST_SUPPORT_DIR := $(OUTPUTDIR)/test-support
Expand Down Expand Up @@ -979,6 +982,7 @@ define SetupRunJtregTestBody
$$(JTREG_JAVA) $$($1_JTREG_LAUNCHER_OPTIONS) \
-Dprogram=jtreg -jar $$(JT_HOME)/lib/jtreg.jar \
$$($1_JTREG_BASIC_OPTIONS) \
-compilejdk:$$(JDK_FOR_COMPILE) \
-testjdk:$$(JDK_UNDER_TEST) \
-dir:$$(JTREG_TOPDIR) \
-reportDir:$$($1_TEST_RESULTS_DIR) \
Expand Down
6 changes: 6 additions & 0 deletions make/autoconf/basic.m4
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,15 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],

# We get the top-level directory from the supporting wrappers.
BASIC_WINDOWS_VERIFY_DIR($TOPDIR, source)
orig_topdir="$TOPDIR"
UTIL_FIXUP_PATH(TOPDIR)
AC_MSG_CHECKING([for top-level directory])
AC_MSG_RESULT([$TOPDIR])
if test "x$TOPDIR" != "x$orig_topdir"; then
AC_MSG_WARN([Your top dir was originally represented as $orig_topdir,])
AC_MSG_WARN([but after rewriting it became $TOPDIR.])
AC_MSG_WARN([This typically means you have characters like space in the path, which can cause all kind of trouble.])
fi
AC_SUBST(TOPDIR)

if test "x$CUSTOM_ROOT" != x; then
Expand Down
32 changes: 19 additions & 13 deletions make/autoconf/flags-cflags.m4
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -235,9 +235,10 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
# Additional warnings that are not activated by -Wall and -Wextra
WARNINGS_ENABLE_ADDITIONAL="-Wpointer-arith -Wreturn-type -Wsign-compare \
-Wtrampolines -Wundef -Wunused-const-variable=1 -Wunused-function \
-Wunused-result -Wunused-value -Wtype-limits -Wuninitialized"
WARNINGS_ENABLE_ADDITIONAL="-Winvalid-pch -Wpointer-arith -Wreturn-type \
-Wsign-compare -Wtrampolines -Wtype-limits -Wundef -Wuninitialized \
-Wunused-const-variable=1 -Wunused-function -Wunused-result \
-Wunused-value"
WARNINGS_ENABLE_ADDITIONAL_CXX="-Woverloaded-virtual -Wreorder"
WARNINGS_ENABLE_ALL_CFLAGS="-Wall -Wextra -Wformat=2 $WARNINGS_ENABLE_ADDITIONAL"
WARNINGS_ENABLE_ALL_CXXFLAGS="$WARNINGS_ENABLE_ALL_CFLAGS $WARNINGS_ENABLE_ADDITIONAL_CXX"
Expand Down Expand Up @@ -277,7 +278,7 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
AC_DEFUN([FLAGS_SETUP_QUALITY_CHECKS],
[
# bounds, memory and behavior checking options
if test "x$TOOLCHAIN_TYPE" = xgcc; then
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
case $DEBUG_LEVEL in
release )
# no adjustment
Expand Down Expand Up @@ -516,12 +517,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
-fvisibility=hidden -fno-strict-aliasing -fno-omit-frame-pointer"
fi
if test "x$TOOLCHAIN_TYPE" = xclang && test "x$OPENJDK_TARGET_OS" = xaix; then
# clang compiler on aix needs -ffunction-sections
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -ffunction-sections -ftls-model -fno-math-errno -fstack-protector"
TOOLCHAIN_CFLAGS_JDK="-ffunction-sections -fsigned-char -fstack-protector"
fi
if test "x$TOOLCHAIN_TYPE" = xgcc; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -fstack-protector"
TOOLCHAIN_CFLAGS_JDK="-fvisibility=hidden -pipe -fstack-protector"
Expand All @@ -541,7 +536,7 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
# Restrict the debug information created by Clang to avoid
# too big object files and speed the build up a little bit
# (see http://llvm.org/bugs/show_bug.cgi?id=7554)
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -flimit-debug-info"
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -flimit-debug-info -fstack-protector"
# In principle the stack alignment below is cpu- and ABI-dependent and
# should agree with values of StackAlignmentInBytes in various
Expand All @@ -559,7 +554,13 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
TOOLCHAIN_CFLAGS_JDK="-pipe"
TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing" # technically NOT for CXX
fi
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -fvisibility=hidden"
if test "x$OPENJDK_TARGET_OS" = xaix; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -ffunction-sections -ftls-model -fno-math-errno"
TOOLCHAIN_CFLAGS_JDK="-ffunction-sections -fsigned-char"
fi
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -fvisibility=hidden -fstack-protector"
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
# The -utf-8 option sets source and execution character sets to UTF-8 to enable correct
Expand Down Expand Up @@ -736,6 +737,11 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
# for all archs except arm and ppc, prevent gcc to omit frame pointer
$1_CFLAGS_CPU_JDK="${$1_CFLAGS_CPU_JDK} -fno-omit-frame-pointer"
fi
if test "x$FLAGS_CPU" = xppc64le; then
# Little endian machine uses ELFv2 ABI.
# Use Power8, this is the first CPU to support PPC64 LE with ELFv2 ABI.
$1_CFLAGS_CPU_JVM="${$1_CFLAGS_CPU_JVM} -DABI_ELFv2 -mcpu=power8 -mtune=power8"
fi
fi
if test "x$OPENJDK_TARGET_OS" = xaix; then
$1_CFLAGS_CPU="-mcpu=pwr8"
Expand Down
7 changes: 6 additions & 1 deletion make/autoconf/util_paths.m4
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,10 @@ AC_DEFUN([UTIL_FIXUP_PATH],
imported_path=""
fi
fi
if test "x$imported_path" != "x$path"; then
[ imported_path_lower=`$ECHO $imported_path | $TR '[:upper:]' '[:lower:]'` ]
[ orig_path_lower=`$ECHO $path | $TR '[:upper:]' '[:lower:]'` ]
# If only case differs, keep original path
if test "x$imported_path_lower" != "x$orig_path_lower"; then
$1="$imported_path"
fi
else
Expand Down Expand Up @@ -357,6 +360,8 @@ AC_DEFUN([UTIL_SETUP_TOOL],
fi
$1="$tool_command"
fi
# Make sure we add fixpath if needed
UTIL_FIXUP_EXECUTABLE($1)
if test "x$tool_args" != x; then
# If we got arguments, re-append them to the command after the fixup.
$1="[$]$1 $tool_args"
Expand Down
8 changes: 4 additions & 4 deletions make/conf/jib-profiles.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -1092,9 +1092,9 @@ var getJibProfilesDependencies = function (input, common) {
windows_x64: "VS2022-17.6.5+1.0",
linux_aarch64: "gcc13.2.0-OL7.6+1.0",
linux_arm: "gcc8.2.0-Fedora27+1.0",
linux_ppc64le: "gcc8.2.0-Fedora27+1.0",
linux_s390x: "gcc8.2.0-Fedora27+1.0",
linux_riscv64: "gcc11.3.0-Fedora_rawhide_68692+1.1"
linux_ppc64le: "gcc13.2.0-Fedora_41+1.0",
linux_s390x: "gcc13.2.0-Fedora_41+1.0",
linux_riscv64: "gcc13.2.0-Fedora_41+1.0"
};

var devkit_platform = (input.target_cpu == "x86"
Expand Down
23 changes: 10 additions & 13 deletions make/devkit/Tools.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2013, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -63,18 +63,14 @@ ifeq ($(BASE_OS), OL)
LINUX_VERSION := OL6.4
endif
else ifeq ($(BASE_OS), Fedora)
DEFAULT_OS_VERSION := 41
ifeq ($(BASE_OS_VERSION), )
BASE_OS_VERSION := $(DEFAULT_OS_VERSION)
endif
ifeq ($(ARCH), riscv64)
DEFAULT_OS_VERSION := rawhide/68692
ifeq ($(BASE_OS_VERSION), )
BASE_OS_VERSION := $(DEFAULT_OS_VERSION)
endif
BASE_URL := http://fedora.riscv.rocks/repos-dist/$(BASE_OS_VERSION)/$(ARCH)/Packages/
BASE_URL := http://fedora.riscv.rocks/repos-dist/f$(BASE_OS_VERSION)/latest/$(ARCH)/Packages/
else
DEFAULT_OS_VERSION := 27
LATEST_ARCHIVED_OS_VERSION := 35
ifeq ($(BASE_OS_VERSION), )
BASE_OS_VERSION := $(DEFAULT_OS_VERSION)
endif
ifeq ($(filter x86_64 armhfp, $(ARCH)), )
FEDORA_TYPE := fedora-secondary
else
Expand Down Expand Up @@ -203,7 +199,7 @@ RPM_LIST := \
glibc glibc-headers glibc-devel \
cups-libs cups-devel \
libX11 libX11-devel \
xorg-x11-proto-devel \
libxcb xorg-x11-proto-devel \
alsa-lib alsa-lib-devel \
libXext libXext-devel \
libXtst libXtst-devel \
Expand Down Expand Up @@ -441,8 +437,9 @@ $(gcc) \
# wants.
$(BUILDDIR)/$(binutils_ver)/Makefile : CONFIG += --enable-64-bit-bfd --libdir=$(PREFIX)/$(word 1,$(LIBDIRS))

ifneq ($(ARCH), riscv64)
# gold is not available for riscv64 for some reason,
ifeq ($(filter $(ARCH), s390x riscv64 ppc64le), )
# gold compiles but cannot link properly on s390x @ gcc 13.2 and Fedore 41
# gold is not available for riscv64 and ppc64le,
# and subsequent linking will fail if we try to enable it.
LINKER_CONFIG := --enable-gold=default
endif
Expand Down
20 changes: 14 additions & 6 deletions make/hotspot/lib/JvmOverrideFiles.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2013, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -52,15 +52,23 @@ ifneq ($(FDLIBM_CFLAGS), )
endif

ifeq ($(call isTargetOs, linux), true)
BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := -DNO_PCH $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)
BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := -DNO_PCH $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)
BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)
BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)

ifeq ($(TOOLCHAIN_TYPE), clang)
JVM_PRECOMPILED_HEADER_EXCLUDE := \
sharedRuntimeTrig.cpp \
sharedRuntimeTrans.cpp \
sharedRuntimeTrig.cpp \
sharedRuntimeTrans.cpp \
$(OPT_SPEED_SRC) \
#
endif

ifeq ($(call isTargetCpu, ppc64le)+$(TOOLCHAIN_TYPE), true+gcc)
JVM_PRECOMPILED_HEADER_EXCLUDE := \
sharedRuntimeTrig.cpp \
sharedRuntimeTrans.cpp \
$(OPT_SPEED_SRC) \
#
#
endif

ifeq ($(call isTargetCpu, x86), true)
Expand Down
7 changes: 2 additions & 5 deletions make/modules/java.desktop/lib/ClientLibraries.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
Expand Down Expand Up @@ -360,8 +360,6 @@ else
LIBFONTMANAGER_JDK_LIBS += libfreetype
endif

LIBFONTMANAGER_OPTIMIZATION := HIGHEST

ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
# gcc (and to an extent clang) is particularly bad at optimizing these files,
# causing a massive spike in compile time. We don't care about these
Expand All @@ -372,7 +370,6 @@ endif

ifeq ($(call isTargetOs, windows), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c X11TextRenderer.c
LIBFONTMANAGER_OPTIMIZATION := HIGHEST
else ifeq ($(call isTargetOs, macosx), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c X11TextRenderer.c \
fontpath.c lcdglyph.c
Expand All @@ -393,7 +390,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
AccelGlyphCache.c, \
CFLAGS := $(LIBFONTMANAGER_CFLAGS), \
CXXFLAGS := $(LIBFONTMANAGER_CFLAGS), \
OPTIMIZATION := $(LIBFONTMANAGER_OPTIMIZATION), \
OPTIMIZATION := HIGHEST, \
CFLAGS_windows = -DCC_NOEX, \
EXTRA_HEADER_DIRS := $(LIBFONTMANAGER_EXTRA_HEADER_DIRS), \
EXTRA_SRC := $(LIBFONTMANAGER_EXTRA_SRC), \
Expand Down
Loading
Loading