[lworld] RFR: 8337210: [lworld] Incorrect IC check leads to continuous cache misses
Tobias Hartmann
thartmann at openjdk.org
Thu Jul 25 13:29:14 UTC 2024
Fixes an incorrect merge of [JDK-8322630](https://bugs.openjdk.org/browse/JDK-8322630) into Valhalla, breaking IC miss resolution and leading to continuous re-resolution of IC calls.
Incorrect IC check:
0x7f9184adfd04: mov 0x8(%rsi),%r10d
0x7f9184adfd08: cmp %r10,%rax
0x7f9184adfd0b: jne 0x7f918465b520
Correct IC check:
0x7f2b90ae1d04: mov 0x8(%rsi),%r10d
0x7f2b90ae1d08: cmp 0x8(%rax),%r10d
0x7f2b90ae1d0c: jne 0x00007f2b9065a820
I intentionally left out the test that reproduces this because it's a very specific issue and the test would require parsing the output of `-XX:+TraceCallFixup` which is error prone (stress flags might trigger resolution unexpectedly).
Thanks to @chhagedorn for helping to narrow this down!
Thanks,
Tobias
-------------
Commit messages:
- 8335578
Changes: https://git.openjdk.org/valhalla/pull/1182/files
Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1182&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8337210
Stats: 20 lines in 3 files changed: 0 ins; 18 del; 2 mod
Patch: https://git.openjdk.org/valhalla/pull/1182.diff
Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1182/head:pull/1182
PR: https://git.openjdk.org/valhalla/pull/1182
More information about the valhalla-dev
mailing list