Mercurial > hg > truffle
diff graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXParameterOp.java @ 11634:bff2b88444f5
Start of PTX array passing
author | Morris Meyer <morris.meyer@oracle.com> |
---|---|
date | Sat, 14 Sep 2013 17:31:25 -0400 |
parents | 91e5f927af63 |
children | 63ca7ec7440f |
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXParameterOp.java Fri Sep 13 17:54:59 2013 +0200 +++ b/graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXParameterOp.java Sat Sep 14 17:31:25 2013 -0400 @@ -48,21 +48,30 @@ for (int i = 0; i < argCount; i++) { Kind paramKind = params[i].getKind(); switch (paramKind) { - case Byte : + case Byte: masm.param_8_decl(asRegister(params[i]), (i == (argCount - 1))); break; - case Int : + case Short: + masm.param_16_decl(asRegister(params[i]), (i == (argCount - 1))); + break; + case Char: + masm.param_u16_decl(asRegister(params[i]), (i == (argCount - 1))); + break; + case Int: masm.param_32_decl(asIntReg(params[i]), (i == (argCount - 1))); break; - case Long : + case Long: masm.param_64_decl(asLongReg(params[i]), (i == (argCount - 1))); break; - case Float : + case Float: masm.param_32_decl(asFloatReg(params[i]), (i == (argCount - 1))); break; - case Double : + case Double: masm.param_64_decl(asDoubleReg(params[i]), (i == (argCount - 1))); break; + case Object: + masm.param_64_decl(asObjectReg(params[i]), (i == (argCount - 1))); + break; default : throw GraalInternalError.shouldNotReachHere("unhandled parameter type " + paramKind.toString()); }