Mercurial > hg > truffle
comparison src/share/vm/memory/oopFactory.hpp @ 518:0af8b0718fc9
6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark"
Summary: The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition.
Reviewed-by: ysr, dcubed
author | jmasa |
---|---|
date | Sun, 11 Jan 2009 16:58:24 -0800 |
parents | a61af66fc99e |
children | 9a25e0c45327 |
comparison
equal
deleted
inserted
replaced
517:e9be0e04635a | 518:0af8b0718fc9 |
---|---|
79 } | 79 } |
80 static symbolHandle new_symbol_handle(char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } | 80 static symbolHandle new_symbol_handle(char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } |
81 static symbolHandle new_symbol_handle(const char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } | 81 static symbolHandle new_symbol_handle(const char* name, TRAPS) { return new_symbol_handle(name, (int)strlen(name), CHECK_(symbolHandle())); } |
82 | 82 |
83 // Constant pools | 83 // Constant pools |
84 static constantPoolOop new_constantPool (int length, TRAPS); | 84 static constantPoolOop new_constantPool (int length, |
85 bool is_conc_safe, | |
86 TRAPS); | |
85 static constantPoolCacheOop new_constantPoolCache(int length, TRAPS); | 87 static constantPoolCacheOop new_constantPoolCache(int length, TRAPS); |
86 | 88 |
87 // Instance classes | 89 // Instance classes |
88 static klassOop new_instanceKlass(int vtable_len, int itable_len, int static_field_size, | 90 static klassOop new_instanceKlass(int vtable_len, int itable_len, int static_field_size, |
89 int nonstatic_oop_map_size, ReferenceType rt, TRAPS); | 91 int nonstatic_oop_map_size, ReferenceType rt, TRAPS); |
91 // Methods | 93 // Methods |
92 private: | 94 private: |
93 static constMethodOop new_constMethod(int byte_code_size, | 95 static constMethodOop new_constMethod(int byte_code_size, |
94 int compressed_line_number_size, | 96 int compressed_line_number_size, |
95 int localvariable_table_length, | 97 int localvariable_table_length, |
96 int checked_exceptions_length, TRAPS); | 98 int checked_exceptions_length, |
99 bool is_conc_safe, | |
100 TRAPS); | |
97 public: | 101 public: |
98 static methodOop new_method(int byte_code_size, AccessFlags access_flags, int compressed_line_number_size, int localvariable_table_length, int checked_exceptions_length, TRAPS); | 102 // Set is_conc_safe for methods which cannot safely be |
103 // processed by concurrent GC even after the return of | |
104 // the method. | |
105 static methodOop new_method(int byte_code_size, | |
106 AccessFlags access_flags, | |
107 int compressed_line_number_size, | |
108 int localvariable_table_length, | |
109 int checked_exceptions_length, | |
110 bool is_conc_safe, | |
111 TRAPS); | |
99 | 112 |
100 // Method Data containers | 113 // Method Data containers |
101 static methodDataOop new_methodData(methodHandle method, TRAPS); | 114 static methodDataOop new_methodData(methodHandle method, TRAPS); |
102 | 115 |
103 // System object arrays | 116 // System object arrays |