src/share/vm/memory/oopFactory.hpp

changeset 2497
3582bf76420e
parent 2314
f95d63e2154a
child 2533
c5a923563727
equal deleted inserted replaced
2496:27e4ea99855d 2497:3582bf76420e
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,

mercurial