< prev index next >

src/hotspot/share/memory/oopFactory.hpp

Print this page




  49 
  50   static typeArrayOop    new_charArray(const char* utf8_str,  TRAPS);
  51   static typeArrayOop    new_tenured_charArray(int length, TRAPS);
  52 
  53   static typeArrayOop    new_typeArray(BasicType type, int length, TRAPS);
  54   static typeArrayOop    new_typeArray_nozero(BasicType type, int length, TRAPS);
  55   static typeArrayOop    new_symbolArray(int length, TRAPS);
  56 
  57   // Regular object arrays
  58   static objArrayOop     new_objArray(Klass* klass, int length, TRAPS);
  59 
  60   // Value arrays...
  61   // LWorld:
  62   //    - Q-type signature allocation should use this path.
  63   //    - L-type signature allocation should use new_objArray (even with value type elements)
  64   //
  65   // Method specifically creates ArrayStorageProperties::null_free and possibly flattened if possible
  66   // i.e. valueArrayOop if flattening can be done, else objArrayOop with "null free" storage properties
  67   static arrayOop        new_valueArray(Klass* klass, int length, TRAPS);
  68 




  69   // Helpers that return handles
  70   static objArrayHandle  new_objArray_handle(Klass* klass, int length, TRAPS);
  71   static typeArrayHandle new_byteArray_handle(int length, TRAPS);
  72 };
  73 
  74 #endif // SHARE_MEMORY_OOPFACTORY_HPP


  49 
  50   static typeArrayOop    new_charArray(const char* utf8_str,  TRAPS);
  51   static typeArrayOop    new_tenured_charArray(int length, TRAPS);
  52 
  53   static typeArrayOop    new_typeArray(BasicType type, int length, TRAPS);
  54   static typeArrayOop    new_typeArray_nozero(BasicType type, int length, TRAPS);
  55   static typeArrayOop    new_symbolArray(int length, TRAPS);
  56 
  57   // Regular object arrays
  58   static objArrayOop     new_objArray(Klass* klass, int length, TRAPS);
  59 
  60   // Value arrays...
  61   // LWorld:
  62   //    - Q-type signature allocation should use this path.
  63   //    - L-type signature allocation should use new_objArray (even with value type elements)
  64   //
  65   // Method specifically creates ArrayStorageProperties::null_free and possibly flattened if possible
  66   // i.e. valueArrayOop if flattening can be done, else objArrayOop with "null free" storage properties
  67   static arrayOop        new_valueArray(Klass* klass, int length, TRAPS);
  68 
  69   // Helper conversions from value to obj array...
  70   static objArrayHandle  copy_valueArray_to_objArray(valueArrayHandle array, TRAPS);
  71   static objArrayHandle  ensure_objArray(oop array, TRAPS); // copy into new objArray if not already an objArray
  72 
  73   // Helpers that return handles
  74   static objArrayHandle  new_objArray_handle(Klass* klass, int length, TRAPS);
  75   static typeArrayHandle new_byteArray_handle(int length, TRAPS);
  76 };
  77 
  78 #endif // SHARE_MEMORY_OOPFACTORY_HPP
< prev index next >