src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder.java
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder.java
Print this page
*** 34,51 ****
import org.graalvm.compiler.debug.Debug;
import org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder;
import org.graalvm.compiler.hotspot.HotSpotLIRGenerator;
import org.graalvm.compiler.hotspot.HotSpotLockStack;
import org.graalvm.compiler.hotspot.HotSpotNodeLIRBuilder;
- import org.graalvm.compiler.hotspot.nodes.DirectCompareAndSwapNode;
import org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode;
import org.graalvm.compiler.hotspot.nodes.HotSpotIndirectCallTargetNode;
import org.graalvm.compiler.lir.LIRFrameState;
import org.graalvm.compiler.lir.Variable;
import org.graalvm.compiler.lir.gen.LIRGeneratorTool;
import org.graalvm.compiler.lir.sparc.SPARCBreakpointOp;
- import org.graalvm.compiler.lir.sparc.SPARCMove.CompareAndSwapOp;
import org.graalvm.compiler.nodes.BreakpointNode;
import org.graalvm.compiler.nodes.CallTargetNode.InvokeKind;
import org.graalvm.compiler.nodes.DirectCallTargetNode;
import org.graalvm.compiler.nodes.FullInfopointNode;
import org.graalvm.compiler.nodes.IndirectCallTargetNode;
--- 34,49 ----
*** 89,110 ****
LIRFrameState info = state(i);
append(new SPARCHotSpotSafepointOp(info, getGen().config, gen));
}
@Override
- public void visitDirectCompareAndSwap(DirectCompareAndSwapNode x) {
- AllocatableValue address = gen.asAllocatable(operand(x.getAddress()));
- AllocatableValue cmpValue = gen.asAllocatable(operand(x.expectedValue()));
- AllocatableValue newValue = gen.asAllocatable(operand(x.newValue()));
- assert cmpValue.getValueKind().equals(newValue.getValueKind());
-
- Variable result = gen.newVariable(newValue.getValueKind());
- append(new CompareAndSwapOp(result, address, cmpValue, newValue));
- setResult(x, result);
- }
-
- @Override
protected void emitDirectCall(DirectCallTargetNode callTarget, Value result, Value[] parameters, Value[] temps, LIRFrameState callState) {
InvokeKind invokeKind = ((HotSpotDirectCallTargetNode) callTarget).invokeKind();
if (invokeKind.isIndirect()) {
append(new SPARCHotspotDirectVirtualCallOp(callTarget.targetMethod(), result, parameters, temps, callState, invokeKind, getGen().config));
} else {
--- 87,96 ----
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File