< prev index next >

src/hotspot/share/opto/runtime.cpp

Print this page




1174 const TypeFunc* OptoRuntime::base64_encodeBlock_Type() {
1175   int argcnt = 6;
1176 
1177   const Type** fields = TypeTuple::fields(argcnt);
1178   int argp = TypeFunc::Parms;
1179   fields[argp++] = TypePtr::NOTNULL;    // src array
1180   fields[argp++] = TypeInt::INT;        // offset
1181   fields[argp++] = TypeInt::INT;        // length
1182   fields[argp++] = TypePtr::NOTNULL;    // dest array
1183   fields[argp++] = TypeInt::INT;       // dp
1184   fields[argp++] = TypeInt::BOOL;       // isURL
1185   assert(argp == TypeFunc::Parms + argcnt, "correct decoding");
1186   const TypeTuple* domain = TypeTuple::make(TypeFunc::Parms+argcnt, fields);
1187 
1188   // result type needed
1189   fields = TypeTuple::fields(1);
1190   fields[TypeFunc::Parms + 0] = NULL; // void
1191   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
1192   return TypeFunc::make(domain, range);
1193 }




















1194 
1195 //------------- Interpreter state access for on stack replacement
1196 const TypeFunc* OptoRuntime::osr_end_Type() {
1197   // create input type (domain)
1198   const Type **fields = TypeTuple::fields(1);
1199   fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf
1200   const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms+1, fields);
1201 
1202   // create result type
1203   fields = TypeTuple::fields(1);
1204   // fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL; // locked oop
1205   fields[TypeFunc::Parms+0] = NULL; // void
1206   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
1207   return TypeFunc::make(domain, range);
1208 }
1209 
1210 //-------------- methodData update helpers
1211 
1212 const TypeFunc* OptoRuntime::profile_receiver_type_Type() {
1213   // create input type (domain)




1174 const TypeFunc* OptoRuntime::base64_encodeBlock_Type() {
1175   int argcnt = 6;
1176 
1177   const Type** fields = TypeTuple::fields(argcnt);
1178   int argp = TypeFunc::Parms;
1179   fields[argp++] = TypePtr::NOTNULL;    // src array
1180   fields[argp++] = TypeInt::INT;        // offset
1181   fields[argp++] = TypeInt::INT;        // length
1182   fields[argp++] = TypePtr::NOTNULL;    // dest array
1183   fields[argp++] = TypeInt::INT;       // dp
1184   fields[argp++] = TypeInt::BOOL;       // isURL
1185   assert(argp == TypeFunc::Parms + argcnt, "correct decoding");
1186   const TypeTuple* domain = TypeTuple::make(TypeFunc::Parms+argcnt, fields);
1187 
1188   // result type needed
1189   fields = TypeTuple::fields(1);
1190   fields[TypeFunc::Parms + 0] = NULL; // void
1191   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
1192   return TypeFunc::make(domain, range);
1193 }
1194 // Base64 decode function
1195 const TypeFunc* OptoRuntime::base64_decodeBlock_Type() {
1196   int argcnt = 5;
1197 
1198   const Type** fields = TypeTuple::fields(argcnt);
1199   int argp = TypeFunc::Parms;
1200   fields[argp++] = TypePtr::NOTNULL;    // src array
1201   fields[argp++] = TypeInt::INT;        // offset
1202   fields[argp++] = TypeInt::INT;        // length
1203   fields[argp++] = TypePtr::NOTNULL;    // dest array
1204   fields[argp++] = TypeInt::BOOL;       // isURL
1205   assert(argp == TypeFunc::Parms + argcnt, "correct decoding");
1206   const TypeTuple* domain = TypeTuple::make(TypeFunc::Parms+argcnt, fields);
1207 
1208   // result type needed
1209   fields = TypeTuple::fields(1);
1210   fields[TypeFunc::Parms + 0] = TypeInt::INT; // dst ofs, or -1
1211   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms + 1, fields);
1212   return TypeFunc::make(domain, range);
1213 }
1214 
1215 //------------- Interpreter state access for on stack replacement
1216 const TypeFunc* OptoRuntime::osr_end_Type() {
1217   // create input type (domain)
1218   const Type **fields = TypeTuple::fields(1);
1219   fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf
1220   const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms+1, fields);
1221 
1222   // create result type
1223   fields = TypeTuple::fields(1);
1224   // fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL; // locked oop
1225   fields[TypeFunc::Parms+0] = NULL; // void
1226   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
1227   return TypeFunc::make(domain, range);
1228 }
1229 
1230 //-------------- methodData update helpers
1231 
1232 const TypeFunc* OptoRuntime::profile_receiver_type_Type() {
1233   // create input type (domain)


< prev index next >