< prev index next >

src/share/vm/opto/runtime.cpp

Print this page
rev 10504 : value type calling convention

@@ -476,11 +476,11 @@
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeRawPtr::NOTNULL; // Returned oop
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 const TypeFunc *OptoRuntime::athrow_Type() {
   // create input type (domain)

@@ -491,11 +491,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 const TypeFunc *OptoRuntime::new_array_Type() {
   // create input type (domain)

@@ -508,11 +508,11 @@
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeRawPtr::NOTNULL; // Returned oop
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::multianewarray_Type(int ndim) {
   // create input type (domain)
   const int nargs = ndim + 1;

@@ -525,11 +525,11 @@
   // create result type (range)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeRawPtr::NOTNULL; // Returned oop
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::multianewarray2_Type() {
   return multianewarray_Type(2);
 }

@@ -556,11 +556,11 @@
   // create result type (range)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeRawPtr::NOTNULL; // Returned oop
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::g1_wb_pre_Type() {
   const Type **fields = TypeTuple::fields(2);
   fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL; // original field value

@@ -569,11 +569,11 @@
 
   // create result type (range)
   fields = TypeTuple::fields(0);
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::g1_wb_post_Type() {
 
   const Type **fields = TypeTuple::fields(2);

@@ -583,11 +583,11 @@
 
   // create result type (range)
   fields = TypeTuple::fields(0);
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::uncommon_trap_Type() {
   // create input type (domain)
   const Type **fields = TypeTuple::fields(1);

@@ -596,11 +596,11 @@
 
   // create result type (range)
   fields = TypeTuple::fields(0);
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 //-----------------------------------------------------------------------------
 // Monitor Handling
 const TypeFunc *OptoRuntime::complete_monitor_enter_Type() {

@@ -613,11 +613,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0,fields);
 
-  return TypeFunc::make(domain,range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 //-----------------------------------------------------------------------------
 const TypeFunc *OptoRuntime::complete_monitor_exit_Type() {

@@ -631,11 +631,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::monitor_notify_Type() {
   // create input type (domain)
   const Type **fields = TypeTuple::fields(1);

@@ -643,11 +643,11 @@
   const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms+1, fields);
 
   // create result type (range)
   fields = TypeTuple::fields(0);
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::flush_windows_Type() {
   // create input type (domain)
   const Type** fields = TypeTuple::fields(1);

@@ -657,11 +657,11 @@
   // create result type
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::l2f_Type() {
   // create input type (domain)
   const Type **fields = TypeTuple::fields(2);

@@ -672,11 +672,11 @@
   // create result type (range)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = Type::FLOAT;
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::modf_Type() {
   const Type **fields = TypeTuple::fields(2);
   fields[TypeFunc::Parms+0] = Type::FLOAT;

@@ -687,11 +687,11 @@
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = Type::FLOAT;
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::Math_D_D_Type() {
   // create input type (domain)
   const Type **fields = TypeTuple::fields(2);

@@ -704,11 +704,11 @@
   fields = TypeTuple::fields(2);
   fields[TypeFunc::Parms+0] = Type::DOUBLE;
   fields[TypeFunc::Parms+1] = Type::HALF;
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+2, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::Math_DD_D_Type() {
   const Type **fields = TypeTuple::fields(4);
   fields[TypeFunc::Parms+0] = Type::DOUBLE;

@@ -721,11 +721,11 @@
   fields = TypeTuple::fields(2);
   fields[TypeFunc::Parms+0] = Type::DOUBLE;
   fields[TypeFunc::Parms+1] = Type::HALF;
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+2, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 //-------------- currentTimeMillis, currentTimeNanos, etc
 
 const TypeFunc* OptoRuntime::void_long_Type() {

@@ -737,11 +737,11 @@
   fields = TypeTuple::fields(2);
   fields[TypeFunc::Parms+0] = TypeLong::LONG;
   fields[TypeFunc::Parms+1] = Type::HALF;
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+2, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 // arraycopy stub variations:
 enum ArrayCopyType {
   ac_fast,                      // void(ptr, ptr, size_t)

@@ -783,11 +783,11 @@
   if (retcnt == 0)
     fields[TypeFunc::Parms+0] = NULL; // void
   else
     fields[TypeFunc::Parms+0] = TypeInt::INT; // status result, if needed
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+retcnt, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::fast_arraycopy_Type() {
   // This signature is simple:  Two base pointers and a size_t.
   return make_arraycopy_Type(ac_fast);

@@ -824,11 +824,11 @@
   // create result type
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 // for aescrypt encrypt/decrypt operations, just three pointers returning void (length is constant)
 const TypeFunc* OptoRuntime::aescrypt_block_Type() {
   // create input type (domain)

@@ -850,11 +850,11 @@
 
   // no result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 /**
  * int updateBytesCRC32(int crc, byte* b, int len)
  */

@@ -872,11 +872,11 @@
 
   // result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT; // crc result
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 /**
  * int updateBytesCRC32C(int crc, byte* buf, int len, int* table)
  */

@@ -895,11 +895,11 @@
 
   // result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT; // crc result
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 /**
 *  int updateBytesAdler32(int adler, bytes* b, int off, int len)
 */

@@ -917,11 +917,11 @@
 
   // result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT; // crc result
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 // for cipherBlockChaining calls of aescrypt encrypt/decrypt, four pointers and a length, returning int
 const TypeFunc* OptoRuntime::cipherBlockChaining_aescrypt_Type() {
   // create input type (domain)

@@ -945,11 +945,11 @@
 
   // returning cipher len (int)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 //for counterMode calls of aescrypt encrypt/decrypt, four pointers and a length, returning int
 const TypeFunc* OptoRuntime::counterMode_aescrypt_Type() {
   // create input type (domain)

@@ -974,11 +974,11 @@
   const TypeTuple* domain = TypeTuple::make(TypeFunc::Parms + argcnt, fields);
   // returning cipher len (int)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms + 0] = TypeInt::INT;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms + 1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 /*
  * void implCompress(byte[] buf, int ofs)
  */

@@ -995,11 +995,11 @@
 
   // no result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 /*
  * int implCompressMultiBlock(byte[] b, int ofs, int limit)
  */

@@ -1018,11 +1018,11 @@
 
   // returning ofs (int)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT; // ofs
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::multiplyToLen_Type() {
   // create input type (domain)
   int num_args      = 6;

@@ -1040,11 +1040,11 @@
 
   // no result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::squareToLen_Type() {
   // create input type (domain)
   int num_args      = 4;

@@ -1060,11 +1060,11 @@
 
   // no result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 // for mulAdd calls, 2 pointers and 3 ints, returning int
 const TypeFunc* OptoRuntime::mulAdd_Type() {
   // create input type (domain)

@@ -1082,11 +1082,11 @@
 
   // returning carry (int)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInt::INT;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms+1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::montgomeryMultiply_Type() {
   // create input type (domain)
   int num_args      = 7;

@@ -1106,11 +1106,11 @@
   // result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypePtr::NOTNULL;
 
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::montgomerySquare_Type() {
   // create input type (domain)
   int num_args      = 6;

@@ -1129,11 +1129,11 @@
   // result type needed
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypePtr::NOTNULL;
 
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc* OptoRuntime::vectorizedMismatch_Type() {
   // create input type (domain)
   int num_args = 4;

@@ -1149,11 +1149,11 @@
 
   //return mismatch index (int)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms + 0] = TypeInt::INT;
   const TypeTuple* range = TypeTuple::make(TypeFunc::Parms + 1, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 // GHASH block processing
 const TypeFunc* OptoRuntime::ghash_processBlocks_Type() {
     int argcnt = 4;

@@ -1169,11 +1169,11 @@
 
     // result type needed
     fields = TypeTuple::fields(1);
     fields[TypeFunc::Parms+0] = NULL; // void
     const TypeTuple* range = TypeTuple::make(TypeFunc::Parms, fields);
-    return TypeFunc::make(domain, range);
+    return TypeFunc::make(domain, domain, range);
 }
 
 //------------- Interpreter state access for on stack replacement
 const TypeFunc* OptoRuntime::osr_end_Type() {
   // create input type (domain)

@@ -1184,11 +1184,11 @@
   // create result type
   fields = TypeTuple::fields(1);
   // fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL; // locked oop
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 //-------------- methodData update helpers
 
 const TypeFunc* OptoRuntime::profile_receiver_type_Type() {

@@ -1200,11 +1200,11 @@
 
   // create result type
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = NULL; // void
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms, fields);
-  return TypeFunc::make(domain,range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 JRT_LEAF(void, OptoRuntime::profile_receiver_type_C(DataLayout* data, oopDesc* receiver))
   if (receiver == NULL) return;
   Klass* receiver_klass = receiver->klass();

@@ -1464,11 +1464,11 @@
   // create result type (range)
   fields = TypeTuple::fields(1);
   fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL; // Exception oop
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+1, fields);
 
-  return TypeFunc::make(domain, range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 void OptoRuntime::deoptimize_caller_frame(JavaThread *thread, bool doit) {
   // Deoptimize the caller before continuing, as the compiled

@@ -1511,11 +1511,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0,fields);
 
-  return TypeFunc::make(domain,range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 //-----------------------------------------------------------------------------
 // Dtrace support.  entry and exit probes have the same signature

@@ -1529,11 +1529,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0,fields);
 
-  return TypeFunc::make(domain,range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 const TypeFunc *OptoRuntime::dtrace_object_alloc_Type() {
   // create input type (domain)
   const Type **fields = TypeTuple::fields(2);

@@ -1545,11 +1545,11 @@
   // create result type (range)
   fields = TypeTuple::fields(0);
 
   const TypeTuple *range = TypeTuple::make(TypeFunc::Parms+0,fields);
 
-  return TypeFunc::make(domain,range);
+  return TypeFunc::make(domain, domain, range);
 }
 
 
 JRT_ENTRY_NO_ASYNC(void, OptoRuntime::register_finalizer(oopDesc* obj, JavaThread* thread))
   assert(obj->is_oop(), "must be a valid oop");
< prev index next >