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

Man Cao manc at openjdk.java.net
Fri Nov 12 20:06:25 UTC 2021


> 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

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6221/files
  - new: https://git.openjdk.java.net/jdk/pull/6221/files/a082f36d..eb6998b9

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6221&range=07
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6221&range=06-07

  Stats: 410615 lines in 833 files changed: 203892 ins; 197453 del; 9270 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6221.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6221/head:pull/6221

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


More information about the hotspot-compiler-dev mailing list