Mercurial > hg > truffle
comparison graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java @ 21247:6a00c1217310
Add SPARCStackMove.
author | Josef Eisl <josef.eisl@jku.at> |
---|---|
date | Tue, 05 May 2015 16:53:37 +0200 |
parents | 00bbd2badfd3 |
children | 4f7c7754667a 79b036f0cf0b |
comparison
equal
deleted
inserted
replaced
21246:b2b3c514a391 | 21247:6a00c1217310 |
---|---|
57 import com.oracle.graal.lir.sparc.SPARCMove.MembarOp; | 57 import com.oracle.graal.lir.sparc.SPARCMove.MembarOp; |
58 import com.oracle.graal.lir.sparc.SPARCMove.MoveFpGp; | 58 import com.oracle.graal.lir.sparc.SPARCMove.MoveFpGp; |
59 import com.oracle.graal.lir.sparc.SPARCMove.MoveFpGpVIS3; | 59 import com.oracle.graal.lir.sparc.SPARCMove.MoveFpGpVIS3; |
60 import com.oracle.graal.lir.sparc.SPARCMove.MoveFromRegOp; | 60 import com.oracle.graal.lir.sparc.SPARCMove.MoveFromRegOp; |
61 import com.oracle.graal.lir.sparc.SPARCMove.MoveToRegOp; | 61 import com.oracle.graal.lir.sparc.SPARCMove.MoveToRegOp; |
62 import com.oracle.graal.lir.sparc.SPARCMove.SPARCStackMove; | |
62 import com.oracle.graal.lir.sparc.SPARCMove.StackLoadAddressOp; | 63 import com.oracle.graal.lir.sparc.SPARCMove.StackLoadAddressOp; |
63 import com.oracle.graal.phases.util.*; | 64 import com.oracle.graal.phases.util.*; |
64 import com.oracle.graal.sparc.*; | 65 import com.oracle.graal.sparc.*; |
65 import com.oracle.graal.sparc.SPARC.CPUFeature; | 66 import com.oracle.graal.sparc.SPARC.CPUFeature; |
66 | 67 |
75 private class SPARCSpillMoveFactory implements LIRGeneratorTool.SpillMoveFactory { | 76 private class SPARCSpillMoveFactory implements LIRGeneratorTool.SpillMoveFactory { |
76 | 77 |
77 @Override | 78 @Override |
78 public LIRInstruction createMove(AllocatableValue result, Value input) { | 79 public LIRInstruction createMove(AllocatableValue result, Value input) { |
79 return SPARCLIRGenerator.this.createMove(result, input); | 80 return SPARCLIRGenerator.this.createMove(result, input); |
81 } | |
82 | |
83 @Override | |
84 public LIRInstruction createStackMove(AllocatableValue result, Value input) { | |
85 return new SPARCStackMove(result, input); | |
80 } | 86 } |
81 } | 87 } |
82 | 88 |
83 public SPARCLIRGenerator(LIRKindTool lirKindTool, Providers providers, CallingConvention cc, LIRGenerationResult lirGenRes) { | 89 public SPARCLIRGenerator(LIRKindTool lirKindTool, Providers providers, CallingConvention cc, LIRGenerationResult lirGenRes) { |
84 super(lirKindTool, providers, cc, lirGenRes); | 90 super(lirKindTool, providers, cc, lirGenRes); |