62 static typeArrayOop new_permanent_shortArray(int length, TRAPS); // used for class file structures |
62 static typeArrayOop new_permanent_shortArray(int length, TRAPS); // used for class file structures |
63 static typeArrayOop new_permanent_intArray (int length, TRAPS); // used for class file structures |
63 static typeArrayOop new_permanent_intArray (int length, TRAPS); // used for class file structures |
64 |
64 |
65 static typeArrayOop new_typeArray(BasicType type, int length, TRAPS); |
65 static typeArrayOop new_typeArray(BasicType type, int length, TRAPS); |
66 |
66 |
67 // Symbols |
|
68 static symbolOop new_symbol(const char* utf8_buffer, int length, TRAPS) { |
|
69 assert(utf8_buffer != NULL, "just checking"); |
|
70 return SymbolTable::lookup(utf8_buffer, length, CHECK_NULL); |
|
71 } |
|
72 static void new_symbols(constantPoolHandle cp, int names_count, |
|
73 const char** name, int* lengths, |
|
74 int* cp_indices, unsigned int* hashValues, |
|
75 TRAPS) { |
|
76 SymbolTable::add(cp, names_count, name, lengths, cp_indices, |
|
77 hashValues, CHECK); |
|
78 } |
|
79 |
|
80 static symbolOop new_symbol(char* name, TRAPS) { return new_symbol(name, (int)strlen(name), CHECK_NULL); } |
|
81 static symbolOop new_symbol(const char* name, TRAPS) { return new_symbol(name, (int)strlen(name), CHECK_NULL); } |
|
82 static symbolOop new_symbol(symbolHandle sym, int begin, int end, TRAPS) { |
|
83 assert(begin <= end && end <= sym->utf8_length(), "just checking"); |
|
84 return SymbolTable::lookup(sym, begin, end, CHECK_NULL); |
|
85 } |
|
86 |
|
87 // Create symbols as above but return a handle |
|
88 static symbolHandle new_symbol_handle(const char* name, int length, TRAPS) { |
|
89 symbolOop sym = new_symbol(name, length, THREAD); |
|
90 return symbolHandle(THREAD, sym); |
|
91 } |
|
92 static symbolHandle new_symbol_handle(char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } |
|
93 static symbolHandle new_symbol_handle(const char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } |
|
94 |
|
95 // Constant pools |
67 // Constant pools |
96 static constantPoolOop new_constantPool (int length, |
68 static constantPoolOop new_constantPool (int length, |
97 bool is_conc_safe, |
69 bool is_conc_safe, |
98 TRAPS); |
70 TRAPS); |
99 static constantPoolCacheOop new_constantPoolCache(int length, |
71 static constantPoolCacheOop new_constantPoolCache(int length, |