Spurious Gate failure
stewartd.qdt
stewartd.qdt at qualcommdatacenter.com
Thu Apr 19 14:42:24 UTC 2018
I had this same warning on the same file (different function). Removing the @SuppressWarnings (in my case) just gave another error because the variable really wasn't used, so it threw a warning about that.
After about 10 tries of uploading changes, I came to the conclusion that something is wrong with their system. It seems like the checking system was a bit too stringent. When I removed the SuppressWarning it complained. Then when I put it back the way it was, it still complained, even though it was exactly as it was originally.
I wound up uploading the exact same thing twice in a row (via git push -f) so that the system thought nothing changed and didn't check it. I'll be interested to see how you fare.
Daniel
-----Original Message-----
From: graal-dev [mailto:graal-dev-bounces at openjdk.java.net] On Behalf Of Andrew Haley
Sent: Thursday, April 19, 2018 10:09 AM
To: graal-dev at openjdk.java.net
Subject: Spurious Gate failure
I can't figure out how to fix this warning:
----------
1. ERROR in /home/travis/build/oracle/graal/compiler/src/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java (at line 211)
public void emitCode(@SuppressWarnings("unused") CompilationResultBuilder crb, AArch64MacroAssembler masm) {
^^^^^^^^ Unnecessary @SuppressWarnings("unused")
----------
The code is this:
public static class MembarOp extends AArch64LIRInstruction {
public static final LIRInstructionClass<MembarOp> TYPE = LIRInstructionClass.create(MembarOp.class);
// For future use.
@SuppressWarnings("unused")
private final int barriers;
public MembarOp(int barriers) {
super(TYPE);
this.barriers = barriers;
}
@Override
public void emitCode(@SuppressWarnings("unused") CompilationResultBuilder crb, AArch64MacroAssembler masm) {
// As I understand it load acquire/store release have the same semantics as on IA64
// and allow us to handle LoadStore, LoadLoad and StoreStore without an explicit
// barrier.
// But Graal support to figure out if a load/store is volatile is non-existant so for
// now just use memory barriers everywhere.
// if ((barrier & MemoryBarriers.STORE_LOAD) != 0) {
masm.dmb(AArch64MacroAssembler.BarrierKind.ANY_ANY);
// }
}
}
--
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 graal-dev
mailing list