RFR: 8341068: [s390x] intrinsics for divideUnsigned and remainderUnsigned methods in java.lang.Integer and java.lang.Long [v2]
Amit Kumar
amitkumar at openjdk.org
Thu Oct 17 13:07:49 UTC 2024
> Add match rules for UDivI, UModI, UDivL, UModL. And also adds `dlr` and `dlgr` instruction.
>
> Tier1 test are clean for fastdebug vm;
>
> Before this patch, `compiler/c2/TestDivModNodes.java` was failing (see jbs issue) but with this patch test is passing.
>
> Without Patch:
>
>
> Benchmark (BUFFER_SIZE) (divisorType) Mode Cnt Score Error Units
> IntegerDivMod.testDivideRemainderUnsigned 1024 mixed avgt 15 1935.176 ± 2.191 ns/op
> IntegerDivMod.testDivideRemainderUnsigned 1024 positive avgt 15 1934.915 ± 3.207 ns/op
> IntegerDivMod.testDivideRemainderUnsigned 1024 negative avgt 15 1934.325 ± 1.108 ns/op
> IntegerDivMod.testDivideUnsigned 1024 mixed avgt 15 1809.782 ± 49.341 ns/op
> IntegerDivMod.testDivideUnsigned 1024 positive avgt 15 1769.326 ± 2.607 ns/op
> IntegerDivMod.testDivideUnsigned 1024 negative avgt 15 1784.053 ± 71.190 ns/op
> IntegerDivMod.testRemainderUnsigned 1024 mixed avgt 15 2026.978 ± 1.534 ns/op
> IntegerDivMod.testRemainderUnsigned 1024 positive avgt 15 2028.039 ± 3.812 ns/op
> IntegerDivMod.testRemainderUnsigned 1024 negative avgt 15 2437.843 ± 636.808 ns/op
> Finished running test 'micro:java.lang.IntegerDivMod'
>
>
> Benchmark (BUFFER_SIZE) (divisorType) Mode Cnt Score Error Units
> LongDivMod.testDivideRemainderUnsigned 1024 mixed avgt 15 4524.897 ± 16.566 ns/op
> LongDivMod.testDivideRemainderUnsigned 1024 positive avgt 15 4373.714 ± 9.514 ns/op
> LongDivMod.testDivideRemainderUnsigned 1024 negative avgt 15 2018.309 ± 1.788 ns/op
> LongDivMod.testDivideUnsigned 1024 mixed avgt 15 4320.382 ± 19.055 ns/op
> LongDivMod.testDivideUnsigned 1024 positive avgt 15 3988.953 ± 8.770 ns/op
> LongDivMod.testDivideUnsigned 1024 negative avgt 15 1069.703 ± 1.525 ns/op
> LongDivMod.testRemainderUnsigned 1024 mixed avgt 15 5589.319 ± 4.247 ns/op
> LongDivMod.testRemainderUnsigned 1024 positive avgt 15 3904.555 ± 3.191 ns/op
> LongDivMod.testRemainderUnsigned 1024 negative avgt 15 1765.761 ± 1.539 ns/op
> Finished ...
Amit Kumar has updated the pull request incrementally with one additional commit since the last revision:
changes leftmost->upper and rightmost -> lower
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/21559/files
- new: https://git.openjdk.org/jdk/pull/21559/files/b39788e2..c94cc448
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=21559&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=21559&range=00-01
Stats: 10 lines in 1 file changed: 0 ins; 0 del; 10 mod
Patch: https://git.openjdk.org/jdk/pull/21559.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/21559/head:pull/21559
PR: https://git.openjdk.org/jdk/pull/21559
More information about the hotspot-compiler-dev
mailing list