[aarch64-port-dev ] RFR(S): 8204473 - AARCH64: register post-index addressing mode is not supported directly
Andrew Haley
aph at redhat.com
Wed Jun 6 17:16:23 UTC 2018
On 06/06/2018 05:59 PM, Dmitrij Pochepko wrote:
> Ahh, sorry. Missed single existing [ab]usage of such addressing in
> fastdebug mode:
Mmm. It's always a really, really good idea to run tests with
assertions enabled.
> http://hg.openjdk.java.net/jdk/jdk/file/tip/src/hotspot/cpu/aarch64/assembler_aarch64.cpp#l1179
>
> However, there is a confusing comment there: "// BEGIN Generated code
> -- do not edit // Generated by aarch64-asmtest.py"
> What should we do about it? I don't see aarch64-asmtest.py to edit.
Oh yes. It must not have been included when we merged into mainline.
Oops.
> Do we need to edit this smoke test directly despite this comment?
Yes, please. The code you need to edit is *after* the line
END Generated code -- do not edit
I did this:
address PC = __ pc();
__ ld1(v0, __ T16B, Address(r16)); // No offset
__ ld1(v0, __ T16B, __ post(r16, 8)); // Post-index
__ ld1(v0, __ T16B, __ post(r16, r17)); //
which at least checks that we can generate the instructions, for which
I get
0x000003ffa1000764: ld1 {v0.16b}, [x16]
0x000003ffa1000768: ld1 {v0.16b}, [x16], #16
0x000003ffa100076c: ld1 {v0.16b}, [x16], x17
That "#16" looks odd. Presumably there's some scaling going on there.
Do you know?
--
Andrew Haley
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671
More information about the aarch64-port-dev
mailing list