getAndAddInt() breaks AOT compilation for AArch64

Doug Simon doug.simon at oracle.com
Wed May 30 17:14:06 UTC 2018



> On 30 May 2018, at 19:10, dean.long at oracle.com wrote:
> 
> On 5/30/18 4:20 AM, Andrew Haley wrote:
>> On 05/30/2018 10:43 AM, Andrew Haley wrote:
>>> On 05/30/2018 10:42 AM, Zhongwei Yao wrote:
>>>> And what shall I do if the patch is OK? Shall I create a pull request
>>>> in Graal for it? Or should we just wait for Daniel's full fix for it?
>>> Let me do it.
>> This is all we need for correctness.
>> 
>> --- /local/graal/graal/compiler/src/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64LIRGenerator.java	2018-05-29 11:10:55.653614259 +0100
>> +++ src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64LIRGenerator.java	2018-05-29 17:04:52.622429877 +0100
>> @@ -152,7 +152,7 @@
>>          Variable scratch1 = newVariable(kind);
>>          Variable scratch2 = newVariable(kind);
>> 
>> -        append(new AtomicReadAndAddOp((AArch64Kind) kind.getPlatformKind(), asAllocatable(result), asAllocatable(address), delta, asAllocatable(scratch1), asAllocatable(scratch2)));
>> +        append(new AtomicReadAndAddOp((AArch64Kind) kind.getPlatformKind(), asAllocatable(result), asAllocatable(address), asAllocatable(delta), asAllocatable(scratch1), asAllocatable(scratch2)));
>>          return result;
>>      }
>> 
>> I guess I don't have to create a pull request for this?
>> 
> 
> I believe a pull request is going to be needed to get it upstream into Graal, but I can include this patch in "JDK-8202670: Update Graal" to allow the update to proceed.

Yes, you should manually include it in "JDK-8202670: Update Graal". I assume a more complete PR will later be submitted by Daniel to github. Or is this already the final fix Andrew?

-Doug


More information about the graal-dev mailing list