hotspot/src/share/vm/opto/runtime.cpp
changeset 26434 09ad55e5f486
parent 25949 34557722059b
child 30244 d4e471395ff5
equal deleted inserted replaced
26433:27020fde2dbf 26434:09ad55e5f486
   920   fields[TypeFunc::Parms+0] = TypeInt::INT; // ofs
   920   fields[TypeFunc::Parms+0] = TypeInt::INT; // ofs
   921   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
   921   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
   922   return TypeFunc::make(domain, range);
   922   return TypeFunc::make(domain, range);
   923 }
   923 }
   924 
   924 
       
   925 const TypeFunc* OptoRuntime::multiplyToLen_Type() {
       
   926   // create input type (domain)
       
   927   int num_args      = 6;
       
   928   int argcnt = num_args;
       
   929   const Type** fields = TypeTuple::fields(argcnt);
       
   930   int argp = TypeFunc::Parms;
       
   931   fields[argp++] = TypePtr::NOTNULL;    // x
       
   932   fields[argp++] = TypeInt::INT;        // xlen
       
   933   fields[argp++] = TypePtr::NOTNULL;    // y
       
   934   fields[argp++] = TypeInt::INT;        // ylen
       
   935   fields[argp++] = TypePtr::NOTNULL;    // z
       
   936   fields[argp++] = TypeInt::INT;        // zlen
       
   937   assert(argp == TypeFunc::Parms+argcnt, "correct decoding");
       
   938   const TypeTuple* domain = TypeTuple::make(TypeFunc::Parms+argcnt, fields);
       
   939 
       
   940   // no result type needed
       
   941   fields = TypeTuple::fields(1);
       
   942   fields[TypeFunc::Parms+0] = NULL;
       
   943   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
       
   944   return TypeFunc::make(domain, range);
       
   945 }
       
   946 
       
   947 
       
   948 
   925 //------------- Interpreter state access for on stack replacement
   949 //------------- Interpreter state access for on stack replacement
   926 const TypeFunc* OptoRuntime::osr_end_Type() {
   950 const TypeFunc* OptoRuntime::osr_end_Type() {
   927   // create input type (domain)
   951   // create input type (domain)
   928   const Type **fields = TypeTuple::fields(1);
   952   const Type **fields = TypeTuple::fields(1);
   929   fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf
   953   fields[TypeFunc::Parms+0] = TypeRawPtr::BOTTOM; // OSR temp buf