JDK-8359126 : [AIX] new test TestImplicitNullChecks.java fails
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 26
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: aix
  • Submitted: 2025-06-10
  • Updated: 2025-09-03
  • Resolved: 2025-06-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 26
26 b02Fixed
Related Reports
Relates :  
Description
On AIX, the first page is readable (but not writable). Therefore, implicit null checks are not possible for loads.

That causes the IR test TestImplicitNullChecks.testLoad to fail. A zeroCheckP_reg_imm0 gets emitted which is not expected by the test:
Failed IR Rules (1) of Methods (1)
----------------------------------
1) Method "static java.lang.Object compiler.gcbarriers.TestImplicitNullChecks.testLoad(compiler.gcbarriers.TestImplicitNullChecks$Outer)" - [Failed IR rules: 1]:
   * @IR rule 1: "@compiler.lib.ir_framework.IR(phase={FINAL_CODE}, applyIfPlatformAnd={}, applyIfCPUFeatureOr={}, counts={"_#NULL_CHECK#_", "1"}, failOn={}, applyIfPlatform={}, applyIfPlatformOr={}, applyIfOr={"UseZGC", "true", "UseG1GC", "true"}, applyIfCPUFeatureAnd={}, applyIf={}, applyIfCPUFeature={}, applyIfAnd={}, applyIfNot={})"
     > Phase "Final Code":
       - counts: Graph contains wrong number of nodes:
         * Constraint 1: "(\\d+(\\s){2}(NullCheck.*)+(\\s){2}===.*)"
           - Failed comparison: [found] 0 = 1 [given]
           - No nodes matched!

The IR rule should be switched off for AIX.
Comments
Changeset: abc76c6b Branch: master Author: Martin Doerr <mdoerr@openjdk.org> Date: 2025-06-11 08:28:31 +0000 URL: https://git.openjdk.org/jdk/commit/abc76c6b5b3e2eabd3fd3ceb96ffe02979dc8956
11-06-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/25728 Date: 2025-06-10 14:10:04 +0000
10-06-2025