Mercurial > hg > truffle
comparison src/share/vm/c1/c1_Compilation.cpp @ 1617:9887b5e57f9e
6962980: C1: stub area should take into account method handle deopt stub
Reviewed-by: twisti, never
author | iveresov |
---|---|
date | Tue, 22 Jun 2010 12:10:07 -0700 |
parents | b812ff5abc73 |
children | 4a665be40fd3 |
comparison
equal
deleted
inserted
replaced
1616:38e8278318ca | 1617:9887b5e57f9e |
---|---|
240 int locs_buffer_size = 20 * (relocInfo::length_limit + sizeof(relocInfo)); | 240 int locs_buffer_size = 20 * (relocInfo::length_limit + sizeof(relocInfo)); |
241 char* locs_buffer = NEW_RESOURCE_ARRAY(char, locs_buffer_size); | 241 char* locs_buffer = NEW_RESOURCE_ARRAY(char, locs_buffer_size); |
242 code->insts()->initialize_shared_locs((relocInfo*)locs_buffer, | 242 code->insts()->initialize_shared_locs((relocInfo*)locs_buffer, |
243 locs_buffer_size / sizeof(relocInfo)); | 243 locs_buffer_size / sizeof(relocInfo)); |
244 code->initialize_consts_size(Compilation::desired_max_constant_size()); | 244 code->initialize_consts_size(Compilation::desired_max_constant_size()); |
245 // Call stubs + deopt/exception handler | 245 // Call stubs + two deopt handlers (regular and MH) + exception handler |
246 code->initialize_stubs_size((call_stub_estimate * LIR_Assembler::call_stub_size) + | 246 code->initialize_stubs_size((call_stub_estimate * LIR_Assembler::call_stub_size) + |
247 LIR_Assembler::exception_handler_size + | 247 LIR_Assembler::exception_handler_size + |
248 LIR_Assembler::deopt_handler_size); | 248 2 * LIR_Assembler::deopt_handler_size); |
249 } | 249 } |
250 | 250 |
251 | 251 |
252 int Compilation::emit_code_body() { | 252 int Compilation::emit_code_body() { |
253 // emit code | 253 // emit code |