RFD: AOT for AArch64 (original) (raw)
Andrew Dinn adinn at redhat.com
Tue Mar 27 15:08:00 UTC 2018
- Previous message: RFD: AOT for AArch64
- Next message: RFD: AOT for AArch64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 27/03/18 09:18, Andrew Dinn wrote:
On 26/03/18 16:02, Andrew Dinn wrote:
On 26/03/18 15:56, Andrew Dinn wrote:
Ship it! Ok, so I know this really needs a code audit too. I'm working on that now. I am still trying to understand all the details of this patch so this is really just preliminary feedback. Many of the comments below are questions, posed mostly as requests for clarification rather than suggestions for any improvement. Also, I'm now switching to look at the Graal changes so I can tie these two patches together. Most of the answers to the last round involved removing the stuff that was asked about. So, I am now quite happy with the remaining hotspot changes (I'm still not clear why x86 has to zero its callInfopoint entries but clearly AArch64 /doesn't/ need -- we know it works -- to so that can pass).
Below is initial feedback on about the Graal changes. I didn't find anything much that needed changing nor come up with nay real questions about the code -- it's mostly unneeded imports. However, I think I still need to spend some more time piecing this together with the hotspot changes. I'll try to get final comments plus a yea or nay (well, ok I guess it's going to be a yea) posted by late tomorrow morning.
regards,
Andrew Dinn
Senior Principal Software Engineer Red Hat UK Ltd Registered in England and Wales under Company Registration No. 03798903 Directors: Michael Cunningham, Michael ("Mike") O'Neill, Eric Shander
compiler/src/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/GraalError.java
/** * This constructor creates a {@link GraalError} with a message
assembled via * {@link String#format(String, Object...)}. It always uses the ENGLISH locale in order to
* always generate the same output.
*
+internal is * * @param msg the message that will be associated with the error, in String.format syntax * @param args parameters to String.format - parameters that implement {@link Iterable} will be * expanded into a [x, x, ...] representation.
This looks like an accidental paste-over!
- compiler/src/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator.java
Two import issues:
+import static jdk.vm.ci.amd64.AMD64.rbp;
This import is not needed
import org.graalvm.compiler.core.common.calc.Condition; +import org.graalvm.compiler.core.common.spi.ForeignCallDescriptor; +import org.graalvm.compiler.core.common.spi.ForeignCallDescriptor;
ForeignCallDescriptor is imported twice.
- compiler/src/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLoadAddressOp.java
redundant include
import static org.graalvm.compiler.asm.aarch64.AArch64Address.*;
- compiler/src/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotMove.java
@@ -117,7 +149,7 @@ public class AArch64HotSpotMove { } else if (nonNull) { masm.sub(64, resultRegister, ptr, base); if (encoding.hasShift()) {
masm.shl(64, resultRegister, resultRegister,
encoding.getShift());
masm.lshr(64, resultRegister, resultRegister,
encoding.getShift()); } } else {
CompressPointer was doing an shl before? Really?
- compiler/src/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Call.java
redundant import:
import static jdk.vm.ci.aarch64.AArch64.lr;
- compiler/src/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java
redundant import:
import static jdk.vm.ci.meta.JavaKind.Int;
- compiler/src/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64RestoreRegistersOp.java
redundant import:
import jdk.vm.ci.aarch64.AArch64Kind;
- compiler/src/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp.java
redundant import:
import org.graalvm.collections.EconomicSet;
- Previous message: RFD: AOT for AArch64
- Next message: RFD: AOT for AArch64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]