[OpenJDK 2D-Dev] RFR: 8246032: Implementation of JEP 347: Adopt C++14 Language Features in HotSpot

Jim Laskey james.laskey at oracle.com
Mon Jun 8 13:28:19 UTC 2020


Hendrik,

Yes, I will file one once I have some data. The benefits are not clear cut and I should annotate the request with validity. :-)

Cheers,

-- Jim



> On Jun 6, 2020, at 11:13 AM, Hendrik Schreiber <hs at tagtraum.com> wrote:
> 
> Jim,
> 
> if there isn’t a dedicated bug report for this (meaning: lack of optimization for macOS), please do create one so that it at least is documented somewhere.
> 
> Thank you,
> 
> -hendrik
> 
>> On Jun 5, 2020, at 13:59, Jim Laskey <james.laskey at oracle.com <mailto:james.laskey at oracle.com>> 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.
>> 
>> Otherwise +1.
>> 
>> Cheers,
>> 
>> -- Jim
>> 
>> 
>> 
>>> On Jun 5, 2020, at 4:52 AM, Kim Barrett <kim.barrett at oracle.com <mailto:kim.barrett at 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 <https://bugs.openjdk.java.net/browse/JDK-8246032>
>>> 
>>> Webrev:
>>> https://cr.openjdk.java.net/~kbarrett/8246032/open.02/ <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
>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/2d-dev/attachments/20200608/26b216fc/attachment.htm>


More information about the 2d-dev mailing list