RFR: 8282221: x86 intrinsics for divideUnsigned and remainderUnsigned methods in java.lang.Integer and java.lang.Long [v10]
Srinivas Vamsi Parasa
duke at openjdk.java.net
Wed Apr 6 22:40:06 UTC 2022
> Optimizes the divideUnsigned() and remainderUnsigned() methods in java.lang.Integer and java.lang.Long classes using x86 intrinsics. This change shows 3x improvement for Integer methods and upto 25% improvement for Long. This change also implements the DivMod optimization which fuses division and modulus operations if needed. The DivMod optimization shows 3x improvement for Integer and ~65% improvement for Long.
Srinivas Vamsi Parasa has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 15 commits:
- use appropriate style changes
- Merge branch 'master' of https://git.openjdk.java.net/jdk into udivmod
- Merge branch 'openjdk:master' into udivmod
- add error msg for jtreg test
- update jtreg test to run on x86_64
- add bmi1 support check and jtreg tests
- Merge branch 'master' of https://git.openjdk.java.net/jdk into udivmod
- fix 32bit build issues
- Fix line at end of file
- Move intrinsic code to macro assembly routines; remove unused transformations for div and mod nodes
- ... and 5 more: https://git.openjdk.java.net/jdk/compare/4451257b...9949047c
-------------
Changes: https://git.openjdk.java.net/jdk/pull/7572/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7572&range=09
Stats: 1011 lines in 20 files changed: 1009 ins; 1 del; 1 mod
Patch: https://git.openjdk.java.net/jdk/pull/7572.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/7572/head:pull/7572
PR: https://git.openjdk.java.net/jdk/pull/7572
More information about the core-libs-dev
mailing list