Mercurial > hg > truffle
comparison src/share/vm/code/stubs.hpp @ 7062:8c5333c80cfd
increased CompileThreshold to increase reliability of profiling information
increased InitialCodeCacheSize to fit the bootstrapping
added flag -XX:GraalClassPath to allow providing a .jar or .zip file that contains all Graal classes
added support for the flag -XX:TraceCompilationPolicy to the Graal-specific compilation policy
author | Christian Haeubl <haeubl@ssw.jku.at> |
---|---|
date | Thu, 15 Nov 2012 11:40:50 +0100 |
parents | d2a62e0f25eb |
children | 7d815d842ee0 |
comparison
equal
deleted
inserted
replaced
6717:5bbe9618118e | 7062:8c5333c80cfd |
---|---|
115 virtual address code_begin(Stub* self) const = 0; // points to the first code byte | 115 virtual address code_begin(Stub* self) const = 0; // points to the first code byte |
116 virtual address code_end(Stub* self) const = 0; // points to the first byte after the code | 116 virtual address code_end(Stub* self) const = 0; // points to the first byte after the code |
117 | 117 |
118 // Debugging | 118 // Debugging |
119 virtual void verify(Stub* self) = 0; // verifies the stub | 119 virtual void verify(Stub* self) = 0; // verifies the stub |
120 virtual void print(Stub* self) = 0; // prints information about the stub | 120 virtual void print_on(Stub* self, outputStream* st) = 0; // prints information about the stub |
121 }; | 121 }; |
122 | 122 |
123 | 123 |
124 // DEF_STUB_INTERFACE is used to create a concrete stub interface | 124 // DEF_STUB_INTERFACE is used to create a concrete stub interface |
125 // class, forwarding stub interface calls to the corresponding | 125 // class, forwarding stub interface calls to the corresponding |
143 virtual address code_begin(Stub* self) const { return cast(self)->code_begin(); } \ | 143 virtual address code_begin(Stub* self) const { return cast(self)->code_begin(); } \ |
144 virtual address code_end(Stub* self) const { return cast(self)->code_end(); } \ | 144 virtual address code_end(Stub* self) const { return cast(self)->code_end(); } \ |
145 \ | 145 \ |
146 /* Debugging */ \ | 146 /* Debugging */ \ |
147 virtual void verify(Stub* self) { cast(self)->verify(); } \ | 147 virtual void verify(Stub* self) { cast(self)->verify(); } \ |
148 virtual void print(Stub* self) { cast(self)->print(); } \ | 148 virtual void print_on(Stub* self, outputStream* st) { cast(self)->print_on(st); } \ |
149 }; | 149 }; |
150 | 150 |
151 | 151 |
152 // A StubQueue maintains a queue of stubs. | 152 // A StubQueue maintains a queue of stubs. |
153 // Note: All sizes (spaces) are given in bytes. | 153 // Note: All sizes (spaces) are given in bytes. |
175 void stub_finalize(Stub* s) { _stub_interface->finalize(s); } | 175 void stub_finalize(Stub* s) { _stub_interface->finalize(s); } |
176 int stub_size(Stub* s) const { return _stub_interface->size(s); } | 176 int stub_size(Stub* s) const { return _stub_interface->size(s); } |
177 bool stub_contains(Stub* s, address pc) const { return _stub_interface->code_begin(s) <= pc && pc < _stub_interface->code_end(s); } | 177 bool stub_contains(Stub* s, address pc) const { return _stub_interface->code_begin(s) <= pc && pc < _stub_interface->code_end(s); } |
178 int stub_code_size_to_size(int code_size) const { return _stub_interface->code_size_to_size(code_size); } | 178 int stub_code_size_to_size(int code_size) const { return _stub_interface->code_size_to_size(code_size); } |
179 void stub_verify(Stub* s) { _stub_interface->verify(s); } | 179 void stub_verify(Stub* s) { _stub_interface->verify(s); } |
180 void stub_print(Stub* s) { _stub_interface->print(s); } | 180 void stub_print(Stub* s, outputStream* st) { _stub_interface->print_on(s, st); } |
181 | 181 |
182 static void register_queue(StubQueue*); | 182 static void register_queue(StubQueue*); |
183 | 183 |
184 public: | 184 public: |
185 StubQueue(StubInterface* stub_interface, int buffer_size, Mutex* lock, | 185 StubQueue(StubInterface* stub_interface, int buffer_size, Mutex* lock, |
219 address stub_code_begin(Stub* s) const { return _stub_interface->code_begin(s); } | 219 address stub_code_begin(Stub* s) const { return _stub_interface->code_begin(s); } |
220 address stub_code_end(Stub* s) const { return _stub_interface->code_end(s); } | 220 address stub_code_end(Stub* s) const { return _stub_interface->code_end(s); } |
221 | 221 |
222 // Debugging/printing | 222 // Debugging/printing |
223 void verify(); // verifies the stub queue | 223 void verify(); // verifies the stub queue |
224 void print(); // prints information about the stub queue | 224 void print() { print_on(tty); } |
225 void print_on(outputStream* st); | |
225 }; | 226 }; |
226 | 227 |
227 #endif // SHARE_VM_CODE_STUBS_HPP | 228 #endif // SHARE_VM_CODE_STUBS_HPP |