RFR: 8276453: Undefined behavior in C1 LIR_OprDesc causes SEGV in fastdebug build [v8]

Man Cao manc at openjdk.java.net
Fri Nov 12 22:28:49 UTC 2021


On Fri, 12 Nov 2021 20:06:25 GMT, Man Cao <manc at openjdk.org> wrote:

>> Hi all,
>> 
>> Could anyone provide some feedback on this bug fix and refactoring change? See https://bugs.openjdk.java.net/browse/JDK-8276453 for more details.
>> If the direction of this change looks good, we can proceed removing the "UGLY HACK" in c1_LIR.hpp and refactor occurrences of "opr->fn()" to "opr.fn()".
>
> Man Cao 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 ten additional commits since the last revision:
> 
>  - Merge branch 'master' into JDK8276453
>  - Add an assertion to forbid pointer() returning NULL
>  - Use nullOpr() or {} instead of LIR_Opr()
>  - Revert the renaming from LIR_OprDesc to LIR_Opr to minimize patch size
>  - Fix aarch64 and arm builds
>  - Fix build errors on non-x86 or non-Linux environments
>  - Remove constructor that takes int to fix build error
>  - Fix errors related NULL value without --disable-warnings-as-errors
>  - Add _value field and rename LIR_OprDesc to LIR_Opr

Thanks. I'll integrate now.

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

PR: https://git.openjdk.java.net/jdk/pull/6221


More information about the hotspot-compiler-dev mailing list