comparison graal/com.oracle.graal.lir/src/com/oracle/graal/lir/gen/LIRGenerator.java @ 18976:3faa4f98d5c8

renamed LIRGenerator.emitForeignCall to emitForeignCallOp to avoid confusion
author Doug Simon <doug.simon@oracle.com>
date Tue, 27 Jan 2015 21:24:24 +0100
parents 76553fa0f02b
children 6fce03279f0a
comparison
equal deleted inserted replaced
18975:88083bb2e0f8 18976:3faa4f98d5c8
247 247
248 public abstract Variable emitConditionalMove(PlatformKind cmpKind, Value leftVal, Value right, Condition cond, boolean unorderedIsTrue, Value trueValue, Value falseValue); 248 public abstract Variable emitConditionalMove(PlatformKind cmpKind, Value leftVal, Value right, Condition cond, boolean unorderedIsTrue, Value trueValue, Value falseValue);
249 249
250 public abstract Variable emitIntegerTestMove(Value leftVal, Value right, Value trueValue, Value falseValue); 250 public abstract Variable emitIntegerTestMove(Value leftVal, Value right, Value trueValue, Value falseValue);
251 251
252 protected abstract void emitForeignCall(ForeignCallLinkage linkage, Value result, Value[] arguments, Value[] temps, LIRFrameState info); 252 /**
253 * Emits the single call operation at the heart of generating LIR for a
254 * {@linkplain #emitForeignCall(ForeignCallLinkage, LIRFrameState, Value...) foreign call}.
255 */
256 protected abstract void emitForeignCallOp(ForeignCallLinkage linkage, Value result, Value[] arguments, Value[] temps, LIRFrameState info);
253 257
254 public static AllocatableValue toStackKind(AllocatableValue value) { 258 public static AllocatableValue toStackKind(AllocatableValue value) {
255 if (value.getKind().getStackKind() != value.getKind()) { 259 if (value.getKind().getStackKind() != value.getKind()) {
256 // We only have stack-kinds in the LIR, so convert the operand kind for values from the 260 // We only have stack-kinds in the LIR, so convert the operand kind for values from the
257 // calling convention. 261 // calling convention.
289 AllocatableValue loc = linkageCc.getArgument(i); 293 AllocatableValue loc = linkageCc.getArgument(i);
290 emitMove(loc, arg); 294 emitMove(loc, arg);
291 argLocations[i] = loc; 295 argLocations[i] = loc;
292 } 296 }
293 res.setForeignCall(true); 297 res.setForeignCall(true);
294 emitForeignCall(linkage, linkageCc.getReturn(), argLocations, linkage.getTemporaries(), state); 298 emitForeignCallOp(linkage, linkageCc.getReturn(), argLocations, linkage.getTemporaries(), state);
295 299
296 if (isLegal(linkageCc.getReturn())) { 300 if (isLegal(linkageCc.getReturn())) {
297 return emitMove(linkageCc.getReturn()); 301 return emitMove(linkageCc.getReturn());
298 } else { 302 } else {
299 return null; 303 return null;