Details
-
Enhancement
-
Resolution: Fixed
-
P4
-
11, 16
-
b08
-
aarch64
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8267146 | 11.0.12 | Boris Ulasevich | P4 | Resolved | Fixed | b03 |
Description
https://github.com/apache/lucene-solr/blob/master/lucene/core/src/java/org/apache/lucene/util/packed/DirectReader.java#L207
public long get(long index) {
int shift = (int) ((index + 1) & 1) << 2;
On the following code the l2i conversion resist in machine code for aarch. It can be skipped with additional ADLC rule for the LShiftI(ConvL2I(AndL(smallmask))) template.
public long get(long index) {
int shift = (int) ((index + 1) & 1) << 2;
On the following code the l2i conversion resist in machine code for aarch. It can be skipped with additional ADLC rule for the LShiftI(ConvL2I(AndL(smallmask))) template.
Attachments
Issue Links
- backported by
-
JDK-8267146 AArch64: more L2I conversions can be skipped
- Resolved