[vectorIntrinsics] RFR: 8261108: Add cast nodes from integer types to float types implementation for Arm SVE [v2]
Wang Huang
whuang at openjdk.java.net
Fri Feb 19 09:47:48 UTC 2021
On Fri, 19 Feb 2021 08:46:22 GMT, Wang Huang <whuang at openjdk.org> wrote:
>> src/hotspot/cpu/aarch64/assembler_aarch64.hpp line 3371:
>>
>>> 3369: } else if (T_dst == D && T_src == S) {
>>> 3370: T_dst = D;
>>> 3371: T_src = B;
>>
>> This looks confusing. I understand that it's just 0b00, but using B here is really confusing. Maybe using 0b00 and 0b11 directly to align with Arm ARM opc/opc2?
>
> Arm uses confusing encoding . If we use 0b00 / 0b11 , we can not get a concise macroassmbler here ( for example. other developers can not use this macro). In fact, `gcc` uses switch..case to convert macro assmbler into Arm's funny encoding.
If we use an `encoding function `(like `switch..case` in `gcc`) instead of `convert function`(`encode_cvtf_T`), source codes here will be a little complicated. :-)
-------------
PR: https://git.openjdk.java.net/panama-vector/pull/37
More information about the panama-dev
mailing list