# HG changeset patch # User twisti # Date 1397881840 36000 # Node ID 359c9bb2d2c8951242c5a8fdb7301cb62ecd7dd4 # Parent de1d50c121cdb8a444a13b5312595687f25363cc make emitAtomicReadAndAdd and emitAtomicReadAndWrite default methods diff -r de1d50c121cd -r 359c9bb2d2c8 graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java --- a/graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java Fri Apr 18 16:50:52 2014 -1000 +++ b/graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java Fri Apr 18 18:30:40 2014 -1000 @@ -905,13 +905,4 @@ throw GraalInternalError.unimplemented(); } - public Value emitAtomicReadAndAdd(Value address, Value delta) { - // TODO Auto-generated method stub - throw GraalInternalError.unimplemented(); - } - - public Value emitAtomicReadAndWrite(Value address, Value newValue) { - // TODO Auto-generated method stub - throw GraalInternalError.unimplemented(); - } } diff -r de1d50c121cd -r 359c9bb2d2c8 graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/HSAILHotSpotLIRGenerator.java --- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/HSAILHotSpotLIRGenerator.java Fri Apr 18 16:50:52 2014 -1000 +++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/HSAILHotSpotLIRGenerator.java Fri Apr 18 18:30:40 2014 -1000 @@ -200,11 +200,6 @@ return result; } - public Value emitAtomicReadAndWrite(Value address, Value newValue) { - // TODO Auto-generated method stub - throw GraalInternalError.unimplemented(); - } - @Override public void emitDeoptimize(Value actionAndReason, Value failedSpeculation, DeoptimizingNode deopting) { emitDeoptimizeInner(actionAndReason, state(deopting), "emitDeoptimize"); diff -r de1d50c121cd -r 359c9bb2d2c8 graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java --- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java Fri Apr 18 16:50:52 2014 -1000 +++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java Fri Apr 18 18:30:40 2014 -1000 @@ -239,16 +239,6 @@ throw GraalInternalError.unimplemented(); } - public Value emitAtomicReadAndAdd(Value address, Value delta) { - // TODO Auto-generated method stub - throw GraalInternalError.unimplemented(); - } - - public Value emitAtomicReadAndWrite(Value address, Value newValue) { - // TODO Auto-generated method stub - throw GraalInternalError.unimplemented(); - } - @Override public Value emitNot(Value input) { GraalInternalError.shouldNotReachHere("binary negation not implemented"); diff -r de1d50c121cd -r 359c9bb2d2c8 graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Fri Apr 18 16:50:52 2014 -1000 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Fri Apr 18 18:30:40 2014 -1000 @@ -24,6 +24,7 @@ import com.oracle.graal.api.code.*; import com.oracle.graal.api.meta.*; +import com.oracle.graal.compiler.common.*; import com.oracle.graal.nodes.*; import com.oracle.graal.nodes.extended.*; @@ -43,9 +44,25 @@ Value emitCompareAndSwap(Value address, Value expectedValue, Value newValue, Value trueValue, Value falseValue); - Value emitAtomicReadAndAdd(Value address, Value delta); + /** + * Emit an atomic read-and-add instruction. + * + * @param address address of the value to be read and written + * @param delta the value to be added + */ + default Value emitAtomicReadAndAdd(Value address, Value delta) { + throw GraalInternalError.unimplemented(); + } - Value emitAtomicReadAndWrite(Value address, Value newValue); + /** + * Emit an atomic read-and-write instruction. + * + * @param address address of the value to be read and written + * @param newValue the new value to be written + */ + default Value emitAtomicReadAndWrite(Value address, Value newValue) { + throw GraalInternalError.unimplemented(); + } void emitDeoptimize(Value actionAndReason, Value failedSpeculation, DeoptimizingNode deopting);