RFR: 8290917: x86: Memory-operand arithmetic instructions have too low costs [v5]
Quan Anh Mai
duke at openjdk.org
Fri Sep 16 05:34:00 UTC 2022
On Thu, 15 Sep 2022 16:45:26 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:
>> Quan Anh Mai has updated the pull request incrementally with one additional commit since the last revision:
>>
>> divL_10
>
> Please also add testing (JMH) for shifts by 1 which you removed. And for `sub_*_imm` instructions.
@vnkozlov I have added cases for shifts by 1 and immediate subtractions as you suggested.
Before After
Benchmark Mode Cnt Score Error Score Error Units
BasicRules.add_mem_con avgt 15 202.913 ± 4.915 210.006 ± 9.775 ns/op
BasicRules.andL_rReg_imm255 avgt 15 185.073 ± 2.768 187.580 ± 4.930 ns/op
BasicRules.andL_rReg_imm65535 avgt 15 184.056 ± 2.315 186.884 ± 2.198 ns/op
BasicRules.divL_10 avgt 15 644.609 ± 8.740 654.411 ± 11.558 ns/op
BasicRules.salI_rReg_1 avgt 15 183.385 ± 2.720 181.688 ± 1.435 ns/op
BasicRules.salL_rReg_1 avgt 15 183.192 ± 2.597 184.337 ± 7.378 ns/op
BasicRules.sarI_rReg_1 avgt 15 184.174 ± 2.646 184.984 ± 6.895 ns/op
BasicRules.sarL_rReg_1 avgt 15 182.288 ± 2.012 182.062 ± 2.178 ns/op
BasicRules.shrI_rReg_1 avgt 15 182.465 ± 2.242 180.915 ± 1.162 ns/op
BasicRules.shrL_rReg_1 avgt 15 183.147 ± 2.277 181.170 ± 1.567 ns/op
BasicRules.subI_rReg_imm avgt 15 200.593 ± 2.279 199.828 ± 2.255 ns/op
BasicRules.subL_rReg_imm avgt 15 185.141 ± 5.717 183.781 ± 3.173 ns/op
-------------
PR: https://git.openjdk.org/jdk/pull/9791
More information about the hotspot-compiler-dev
mailing list