RFR: 8257221: C2: RegMask::is_bound_set split set handling broken since JDK-8221404 [v2]
Claes Redestad
redestad at openjdk.java.net
Sat Nov 28 00:32:08 UTC 2020
> This patch adds more tests for RegMask::is_bound* operations, and fixes a bug I introduced in JDK-8221404 where I mixed up the formula for how much we need to shift the "bit" when checking a split set.
>
> This also optimizes RegMask::is_bound (~2x) by removing use of Size() in is_bound1 and streamlining the three component methods (is_bound1, is_bound_pair, is_bound_set) so that they all do a cheap check that the remaining words are all zero after a matching bit, pair or set has been found.
Claes Redestad has updated the pull request incrementally with one additional commit since the last revision:
Split out the optimization
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/1486/files
- new: https://git.openjdk.java.net/jdk/pull/1486/files/3245e387..2937939d
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1486&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1486&range=00-01
Stats: 66 lines in 1 file changed: 3 ins; 44 del; 19 mod
Patch: https://git.openjdk.java.net/jdk/pull/1486.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/1486/head:pull/1486
PR: https://git.openjdk.java.net/jdk/pull/1486
More information about the hotspot-compiler-dev
mailing list