comparison graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotNodeLIRBuilder.java @ 21413:15a46a918fc1

removed unnecessary HotSpotCodeCache.MarkId enum (JBS:GRAAL-53) converted some uses of GraalInternalError to InternalError
author Doug Simon <doug.simon@oracle.com>
date Mon, 18 May 2015 22:27:24 +0200
parents 89c729e9e0a4
children cba35d171cd1
comparison
equal deleted inserted replaced
21412:6df10903c955 21413:15a46a918fc1
156 append(new AMD64HotspotDirectVirtualCallOp(callTarget.targetMethod(), result, parameters, temps, callState, invokeKind, runtime.getConfig())); 156 append(new AMD64HotspotDirectVirtualCallOp(callTarget.targetMethod(), result, parameters, temps, callState, invokeKind, runtime.getConfig()));
157 } else { 157 } else {
158 assert invokeKind.isDirect(); 158 assert invokeKind.isDirect();
159 HotSpotResolvedJavaMethod resolvedMethod = (HotSpotResolvedJavaMethod) callTarget.targetMethod(); 159 HotSpotResolvedJavaMethod resolvedMethod = (HotSpotResolvedJavaMethod) callTarget.targetMethod();
160 assert resolvedMethod.isConcrete() : "Cannot make direct call to abstract method."; 160 assert resolvedMethod.isConcrete() : "Cannot make direct call to abstract method.";
161 append(new AMD64HotspotDirectStaticCallOp(callTarget.targetMethod(), result, parameters, temps, callState, invokeKind)); 161 append(new AMD64HotspotDirectStaticCallOp(callTarget.targetMethod(), result, parameters, temps, callState, invokeKind, runtime.getConfig()));
162 } 162 }
163 } 163 }
164 164
165 @Override 165 @Override
166 protected void emitIndirectCall(IndirectCallTargetNode callTarget, Value result, Value[] parameters, Value[] temps, LIRFrameState callState) { 166 protected void emitIndirectCall(IndirectCallTargetNode callTarget, Value result, Value[] parameters, Value[] temps, LIRFrameState callState) {
169 Value targetAddressSrc = operand(callTarget.computedAddress()); 169 Value targetAddressSrc = operand(callTarget.computedAddress());
170 AllocatableValue metaspaceMethodDst = AMD64.rbx.asValue(metaspaceMethodSrc.getLIRKind()); 170 AllocatableValue metaspaceMethodDst = AMD64.rbx.asValue(metaspaceMethodSrc.getLIRKind());
171 AllocatableValue targetAddressDst = AMD64.rax.asValue(targetAddressSrc.getLIRKind()); 171 AllocatableValue targetAddressDst = AMD64.rax.asValue(targetAddressSrc.getLIRKind());
172 gen.emitMove(metaspaceMethodDst, metaspaceMethodSrc); 172 gen.emitMove(metaspaceMethodDst, metaspaceMethodSrc);
173 gen.emitMove(targetAddressDst, targetAddressSrc); 173 gen.emitMove(targetAddressDst, targetAddressSrc);
174 append(new AMD64IndirectCallOp(callTarget.targetMethod(), result, parameters, temps, metaspaceMethodDst, targetAddressDst, callState)); 174 append(new AMD64IndirectCallOp(callTarget.targetMethod(), result, parameters, temps, metaspaceMethodDst, targetAddressDst, callState, runtime.getConfig()));
175 } else { 175 } else {
176 super.emitIndirectCall(callTarget, result, parameters, temps, callState); 176 super.emitIndirectCall(callTarget, result, parameters, temps, callState);
177 } 177 }
178 } 178 }
179 179