RFR: 8299172: RISC-V: [TESTBUG] Fix stack alignment logic in jvmci RISCV64TestAssembler.java

Xiaolin Zheng xlinzheng at openjdk.org
Wed Dec 21 06:19:30 UTC 2022


We observed a failure in JVMCI tests after `-ea -esa` turns on when running `./test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/NativeCallTest.java`.

Failure at the line [1].


java.lang.AssertionError
at jdk.vm.ci.code.test.riscv64.RISCV64TestAssembler.emitGrowStack(RISCV64TestAssembler.java:203)
at jdk.vm.ci.code.test.riscv64.RISCV64TestAssembler.emitCallPrologue(RISCV64TestAssembler.java:239)
...
...


The failure output has been attached to the JBS issue link.

To be short, the stack alignment should align with `16`, and we can align with the logic in AArch64 [2] and x86_64 [3]. The x86_64 one is inside a recent change.

Tested along with other patches, and the failed test passed.

Thanks,
Xiaolin

[1] https://github.com/openjdk/jdk/blob/f56285c3613bb127e22f544bd4b461a0584e9d2a/test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/riscv64/RISCV64TestAssembler.java#L193
[2] https://github.com/openjdk/jdk/blob/f56285c3613bb127e22f544bd4b461a0584e9d2a/test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/aarch64/AArch64TestAssembler.java#L273-L285
[3] https://github.com/openjdk/jdk/commit/277f0c24a2e186166bfe70fc93ba79aec10585aa

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

Commit messages:
 - Fix compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/NativeCallTest.java

Changes: https://git.openjdk.org/jdk/pull/11751/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11751&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8299172
  Stats: 4 lines in 1 file changed: 0 ins; 2 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/11751.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11751/head:pull/11751

PR: https://git.openjdk.org/jdk/pull/11751


More information about the hotspot-compiler-dev mailing list