38 class vframeArray; |
38 class vframeArray; |
39 |
39 |
40 class oopFactory: AllStatic { |
40 class oopFactory: AllStatic { |
41 public: |
41 public: |
42 // Basic type leaf array allocation |
42 // Basic type leaf array allocation |
43 static typeArrayOop new_boolArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::boolArrayKlassObj ())->allocate(length, CHECK_NULL); } |
43 static typeArrayOop new_boolArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::boolArrayKlassObj ())->allocate(length, CHECK_NULL); } |
44 static typeArrayOop new_charArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::charArrayKlassObj ())->allocate(length, CHECK_NULL); } |
44 static typeArrayOop new_charArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::charArrayKlassObj ())->allocate(length, CHECK_NULL); } |
45 static typeArrayOop new_singleArray(int length, TRAPS) { return typeArrayKlass::cast(Universe::singleArrayKlassObj())->allocate(length, CHECK_NULL); } |
45 static typeArrayOop new_singleArray(int length, TRAPS) { return TypeArrayKlass::cast(Universe::singleArrayKlassObj())->allocate(length, CHECK_NULL); } |
46 static typeArrayOop new_doubleArray(int length, TRAPS) { return typeArrayKlass::cast(Universe::doubleArrayKlassObj())->allocate(length, CHECK_NULL); } |
46 static typeArrayOop new_doubleArray(int length, TRAPS) { return TypeArrayKlass::cast(Universe::doubleArrayKlassObj())->allocate(length, CHECK_NULL); } |
47 static typeArrayOop new_byteArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::byteArrayKlassObj ())->allocate(length, CHECK_NULL); } |
47 static typeArrayOop new_byteArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::byteArrayKlassObj ())->allocate(length, CHECK_NULL); } |
48 static typeArrayOop new_shortArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::shortArrayKlassObj ())->allocate(length, CHECK_NULL); } |
48 static typeArrayOop new_shortArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::shortArrayKlassObj ())->allocate(length, CHECK_NULL); } |
49 static typeArrayOop new_intArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::intArrayKlassObj ())->allocate(length, CHECK_NULL); } |
49 static typeArrayOop new_intArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::intArrayKlassObj ())->allocate(length, CHECK_NULL); } |
50 static typeArrayOop new_longArray (int length, TRAPS) { return typeArrayKlass::cast(Universe::longArrayKlassObj ())->allocate(length, CHECK_NULL); } |
50 static typeArrayOop new_longArray (int length, TRAPS) { return TypeArrayKlass::cast(Universe::longArrayKlassObj ())->allocate(length, CHECK_NULL); } |
51 |
51 |
52 // create java.lang.Object[] |
52 // create java.lang.Object[] |
53 static objArrayOop new_objectArray(int length, TRAPS) { |
53 static objArrayOop new_objectArray(int length, TRAPS) { |
54 assert(Universe::objectArrayKlassObj() != NULL, "Too early?"); |
54 assert(Universe::objectArrayKlassObj() != NULL, "Too early?"); |
55 return objArrayKlass:: |
55 return ObjArrayKlass:: |
56 cast(Universe::objectArrayKlassObj())->allocate(length, CHECK_NULL); |
56 cast(Universe::objectArrayKlassObj())->allocate(length, CHECK_NULL); |
57 } |
57 } |
58 |
58 |
59 static typeArrayOop new_charArray (const char* utf8_str, TRAPS); |
59 static typeArrayOop new_charArray (const char* utf8_str, TRAPS); |
60 static typeArrayOop new_tenured_charArray(int length, TRAPS); |
60 static typeArrayOop new_tenured_charArray(int length, TRAPS); |