comparison graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCIndirectCallOp.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 8fc336a04d77
children 1da7aef31a08
comparison
equal deleted inserted replaced
21412:6df10903c955 21413:15a46a918fc1
27 import static com.oracle.graal.sparc.SPARC.*; 27 import static com.oracle.graal.sparc.SPARC.*;
28 28
29 import com.oracle.graal.api.code.*; 29 import com.oracle.graal.api.code.*;
30 import com.oracle.graal.api.meta.*; 30 import com.oracle.graal.api.meta.*;
31 import com.oracle.graal.asm.sparc.*; 31 import com.oracle.graal.asm.sparc.*;
32 import com.oracle.graal.hotspot.meta.HotSpotCodeCacheProvider.MarkId; 32 import com.oracle.graal.hotspot.*;
33 import com.oracle.graal.lir.*; 33 import com.oracle.graal.lir.*;
34 import com.oracle.graal.lir.asm.*; 34 import com.oracle.graal.lir.asm.*;
35 import com.oracle.graal.lir.sparc.*; 35 import com.oracle.graal.lir.sparc.*;
36 import com.oracle.graal.lir.sparc.SPARCCall.IndirectCallOp; 36 import com.oracle.graal.lir.sparc.SPARCCall.IndirectCallOp;
37 37
50 */ 50 */
51 public static final Register METHOD = g5; 51 public static final Register METHOD = g5;
52 52
53 @Use({REG}) protected Value metaspaceMethod; 53 @Use({REG}) protected Value metaspaceMethod;
54 54
55 SPARCIndirectCallOp(ResolvedJavaMethod targetMethod, Value result, Value[] parameters, Value[] temps, Value metaspaceMethod, Value targetAddress, LIRFrameState state) { 55 private final HotSpotVMConfig config;
56
57 SPARCIndirectCallOp(ResolvedJavaMethod targetMethod, Value result, Value[] parameters, Value[] temps, Value metaspaceMethod, Value targetAddress, LIRFrameState state, HotSpotVMConfig config) {
56 super(TYPE, targetMethod, result, parameters, temps, targetAddress, state); 58 super(TYPE, targetMethod, result, parameters, temps, targetAddress, state);
57 this.metaspaceMethod = metaspaceMethod; 59 this.metaspaceMethod = metaspaceMethod;
60 this.config = config;
58 } 61 }
59 62
60 @Override 63 @Override
61 public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) { 64 public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) {
62 MarkId.recordMark(crb, MarkId.INLINE_INVOKE); 65 crb.recordMark(config.MARKID_INLINE_INVOKE);
63 Register callReg = asRegister(targetAddress); 66 Register callReg = asRegister(targetAddress);
64 assert !callReg.equals(METHOD); 67 assert !callReg.equals(METHOD);
65 SPARCCall.indirectCall(crb, masm, callReg, callTarget, state); 68 SPARCCall.indirectCall(crb, masm, callReg, callTarget, state);
66 } 69 }
67 70