RFR: Fix Optimized builds [v2]

Ron Pressler rpressler at openjdk.java.net
Thu Sep 30 10:09:53 UTC 2021


On Thu, 30 Sep 2021 09:57:26 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> The usual trap in Hotspot code is the belief that `ASSERT <=> !PRODUCT`, but that's not actually true. You would not see this in regular release (`!ASSERT`, `PRODUCT`) or fastdebug (`ASSERT`, `!PRODUCT`) builds, but you would see it in optimized (`!ASSERT`, `!PRODUCT`) builds. See for example GHA: https://github.com/shipilev/loom/runs/3717294006?check_suite_focus=true
>> 
>> The use of `ASSERT` and `PRODUCT` should be consistent to avoid build failures in optimized builds.
>> 
>> Additional testing:
>>  - [x] Linux x86_64 optimized now builds
>>  - [x] Linux x86_64 release still builds
>>  - [x] Linux x86_64 fastdebug still builds
>
> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
> 
>  - More work
>  - Merge branch 'fibers' into fix-optimized-builds
>  - Consistent use for ASSERT and PRODUCT

Ah, OK. I understand the logic now, but it means that the guard will need to be revisited once the traces are cleaned up. You can integrate. Is there a logging mode that is guarded by ASSERT (that would be the most common intent in this code)?

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

PR: https://git.openjdk.java.net/loom/pull/69


More information about the loom-dev mailing list