Mercurial > hg > truffle
comparison src/share/vm/ci/ciObjectFactory.hpp @ 2181:d25d4ca69222
Merge.
author | Thomas Wuerthinger <wuerthinger@ssw.jku.at> |
---|---|
date | Wed, 16 Feb 2011 13:47:20 +0100 |
parents | 06f017f7daa7 3582bf76420e |
children | 0654ee04b214 |
comparison
equal
deleted
inserted
replaced
2108:50b45e2d9725 | 2181:d25d4ca69222 |
---|---|
46 GrowableArray<ciObject*>* _ci_objects; | 46 GrowableArray<ciObject*>* _ci_objects; |
47 GrowableArray<ciMethod*>* _unloaded_methods; | 47 GrowableArray<ciMethod*>* _unloaded_methods; |
48 GrowableArray<ciKlass*>* _unloaded_klasses; | 48 GrowableArray<ciKlass*>* _unloaded_klasses; |
49 GrowableArray<ciInstance*>* _unloaded_instances; | 49 GrowableArray<ciInstance*>* _unloaded_instances; |
50 GrowableArray<ciReturnAddress*>* _return_addresses; | 50 GrowableArray<ciReturnAddress*>* _return_addresses; |
51 GrowableArray<ciSymbol*>* _symbols; // keep list of symbols created | |
51 int _next_ident; | 52 int _next_ident; |
52 | 53 |
53 public: | 54 public: |
54 struct NonPermObject : public ResourceObj { | 55 struct NonPermObject : public ResourceObj { |
55 ciObject* _object; | 56 ciObject* _object; |
74 | 75 |
75 NonPermObject* &find_non_perm(oop key); | 76 NonPermObject* &find_non_perm(oop key); |
76 void insert_non_perm(NonPermObject* &where, oop key, ciObject* obj); | 77 void insert_non_perm(NonPermObject* &where, oop key, ciObject* obj); |
77 | 78 |
78 void init_ident_of(ciObject* obj); | 79 void init_ident_of(ciObject* obj); |
80 void init_ident_of(ciSymbol* obj); | |
79 | 81 |
80 Arena* arena() { return _arena; } | 82 Arena* arena() { return _arena; } |
81 | 83 |
82 void print_contents_impl(); | 84 void print_contents_impl(); |
83 | 85 |
86 public: | 88 public: |
87 static bool is_initialized() { return _initialized; } | 89 static bool is_initialized() { return _initialized; } |
88 | 90 |
89 static void initialize(); | 91 static void initialize(); |
90 void init_shared_objects(); | 92 void init_shared_objects(); |
93 void remove_symbols(); | |
91 | 94 |
92 ciObjectFactory(Arena* arena, int expected_size); | 95 ciObjectFactory(Arena* arena, int expected_size); |
93 | 96 |
94 void cleanup(); | 97 void cleanup(); |
95 | 98 |
96 // Get the ciObject corresponding to some oop. | 99 // Get the ciObject corresponding to some oop. |
97 ciObject* get(oop key); | 100 ciObject* get(oop key); |
101 | |
102 ciSymbol* get_symbol(Symbol* key); | |
98 | 103 |
99 // Get the ciSymbol corresponding to one of the vmSymbols. | 104 // Get the ciSymbol corresponding to one of the vmSymbols. |
100 static ciSymbol* vm_symbol_at(int index); | 105 static ciSymbol* vm_symbol_at(int index); |
101 | 106 |
102 // Get the ciMethod representing an unloaded/unfound method. | 107 // Get the ciMethod representing an unloaded/unfound method. |