[aarch64-port-dev ] [aarch64-port-dev] [10] RFR: 8184049 : Matching rule for ubfiz
Ningsheng Jian
ningsheng.jian at linaro.org
Tue Aug 1 07:33:12 UTC 2017
The mask/width in instruct format of OptoAssembly does not match the
real assembly syntax.
E.g. for instruction "ubfiz w0, w11, #3, #4", PrintOptoAssembly
outputs "ubfizw R0, R11, #3, #15".
But I don't have a good suggestion for that.
Thanks,
Ningsheng
On 31 July 2017 at 20:22, Daniel Stewart <daniel.stewart at linaro.org> wrote:
> Updated webrev to address Felix's issue regarding the format.
>
> Please review and let me know of any changes/fixes.
>
> http://cr.openjdk.java.net/~njian/8184049/webrev.02/
>
> Daniel
>
> On Fri, Jul 28, 2017 at 1:37 PM, Andrew Haley <aph at redhat.com> wrote:
>
>> On 27/07/17 21:49, Daniel Stewart wrote:
>> > public void run(String [] args) {
>> > long sum = this.sum | (1 << 27);
>> > int n = (int)sum;
>> > n = xorshift32(n);
>> > for (int i = 0; i < 1000; i++) {
>> > //System.out.println((int)Math.random());
>> > n += testI(n);
>> > n += testI2(n);
>> > n += testI3(n);
>> > n += testI4(n);
>> > n += testI5(n);
>> > }
>> > long n1 = (long)n;
>> > for (int i = 0; i < 1000; i++) {
>> > n1 += testL(n1);
>> > n1 += testL2(n1);
>> > n1 += testL3(n1);
>> > n1 += testL4(n1);
>> > n1 += testConv(n1);
>> > }
>> > short n2 = (short)n;
>> > for (int i = 0; i < 1000; i++) {
>> > n2 += testConv2((short)n2);
>> > }
>> > n1 += n2;
>> > for (int i = 0; i< 1000; i++) {
>> > n1 += testConv3(n);
>>
>> This loop doesn't test the intrinsic. I added
>>
>> n = xorshift32(n);
>>
>> here.
>>
>> > }
>> > this.sum += sum ^ n1;
>>
>>
>> --
>> Andrew Haley
>> Java Platform Lead Engineer
>> Red Hat UK Ltd. <https://www.redhat.com>
>> EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671
>>
>
>
>
> --
> Daniel Stewart
More information about the aarch64-port-dev
mailing list