On 2020-06-05 13:59, Jim Laskey wrote:
I know there was a discussion about this elsewhere but I would like to take the
opportunity to correct this now
make//autoconf/flags-cflags.m4:241
elif test "x$TOOLCHAIN_TYPE" = xclang; then
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
# On MacOSX we optimize for size, something
# we should do for all platforms?
C_O_FLAG_HIGHEST_JVM="-Os"
C_O_FLAG_HIGHEST="-Os"
C_O_FLAG_HI="-Os"
C_O_FLAG_NORM="-Os"
C_O_FLAG_DEBUG_JVM=""
else
C_O_FLAG_HIGHEST_JVM="-O3"
C_O_FLAG_HIGHEST="-O3"
C_O_FLAG_HI="-O3"
C_O_FLAG_NORM="-O2"
C_O_FLAG_DEBUG_JVM="-O0"
fi
C_O_FLAG_SIZE="-Os"
C_O_FLAG_DEBUG="-O0"
C_O_FLAG_NONE="-O0"
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
should be changed to
elif test "x$TOOLCHAIN_TYPE" = xclang; then
C_O_FLAG_HIGHEST_JVM="-O3"
C_O_FLAG_HIGHEST="-O3"
C_O_FLAG_HI="-O3"
C_O_FLAG_NORM="-O2"
C_O_FLAG_DEBUG_JVM="-O0"
C_O_FLAG_SIZE="-Os"
C_O_FLAG_DEBUG="-O0"
C_O_FLAG_NONE="-O0"
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
MacOSX has been paying a historic and significant performance penalty for no
valid reason.
This might be a valid change, but it has nothing to do with C++14, and
changing it at the same time will increase risk for unrelated strange
errors. Please open a separate JBS issue for this requested change.
/Magnus
Otherwise +1.
Cheers,
-- Jim
On Jun 5, 2020, at 4:52 AM, Kim Barrett <kim.barr...@oracle.com> wrote:
[Changes are only to the build system, but since the changes have jdk-wide
effect I’ve cc’d what I think are the relevant dev lists.]
This change is part of JEP 347; the intent is to target JDK 16.
Please review this change to the building of C++ code in the JDK to
enable the use of C++14 language features. This change does not make
any code changes to use new features provided by C++11 or C++14.
This requires trimming the supported compiler versions, moving the
minimum supported versions forward (significantly, in some cases).
The new minimums are based on compiler documentation rather than
testing. It may be that more recent versions are actually required.
This change needs to be tested on platforms not supported by Oracle.
The JEP test plan includes additional Oracle testing beyond what I’ve done.
CR:
https://bugs.openjdk.java.net/browse/JDK-8246032
Webrev:
https://cr.openjdk.java.net/~kbarrett/8246032/open.02/
Testing:
mach5 tier1-5 on Oracle supported platforms.
Performance testing showed no significant changes in either direction.
Build-only (no tests) for linux-arm32, linux-s390x, linux-ppc64le