RFR(M): 8154826: AArch64: take better advantage of base + shifted offset addressing mode

Roland Westrelin rwestrel at redhat.com
Thu Apr 21 08:23:31 UTC 2016


http://cr.openjdk.java.net/~roland/8154826/webrev.00/

The aarch64 port implicitly transforms:
(AddP base (AddP base address (LShiftL index con)) offset)
into:
(AddP base (AddP base offset) (LShiftL index con))
in the ad file to embed the shift (and possibly and i2l conversion) into
the addressing mode of a memory operation. Exposing that transformation
in the ideal graph allows:

- (AddP base offset) to be scheduled (for instance outside a loop)
- multiple identical (AddP base offset) to be commoned
- (LShiftL index con) to be cloned during matching so that each memory
access has its own

Roland.


More information about the hotspot-compiler-dev mailing list