RFR: 8350866: [x86] Add C1 intrinsics for CRC32-C [v3]
Martin Doerr
mdoerr at openjdk.org
Mon Mar 10 13:43:11 UTC 2025
On Mon, 10 Mar 2025 12:58:39 GMT, David Linus Briemann <duke at openjdk.org> wrote:
>> 8350866: [x86] Add C1 intrinsics for CRC32-C
>
> David Linus Briemann has updated the pull request incrementally with one additional commit since the last revision:
>
> fix typo again
Looks correct. Thanks for the contribution!
src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp line 1172:
> 1170: __ convert(Bytecodes::_i2l, index, tmp);
> 1171: index = tmp;
> 1172: __ add(index, LIR_OprFact::intptrConst(offset), index);
I don't think we need this addition. LIR_Address can take both on x86: https://github.com/openjdk/jdk/blob/e90b6bdb875315de6b962e2c7d36606d9a593eb9/src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp#L1104
src/hotspot/cpu/x86/c1_LIRGenerator_x86.cpp line 1193:
> 1191: __ move(len, arg3);
> 1192:
> 1193: __ call_runtime_leaf(StubRoutines::updateBytesCRC32C(), LIR_OprFact::illegalOpr, result_reg, cc->args());
Seems like x86 typically uses `getThreadTemp()` instead of `LIR_OprFact::illegalOpr`.
-------------
PR Review: https://git.openjdk.org/jdk/pull/23826#pullrequestreview-2670980596
PR Review Comment: https://git.openjdk.org/jdk/pull/23826#discussion_r1987299953
PR Review Comment: https://git.openjdk.org/jdk/pull/23826#discussion_r1987301723
More information about the hotspot-compiler-dev
mailing list