comparison src/share/vm/opto/output.cpp @ 4947:fd8114661503

7125136: SIGILL on linux amd64 in gc/ArrayJuggle/Juggle29 Summary: For C2 moved saving EBP after ESP adjustment. For C1 generated 5 byte nop instruction first if needed. Reviewed-by: never, twisti, azeemj
author kvn
date Wed, 15 Feb 2012 21:37:49 -0800
parents e9a5e0a812c8
children 33df1aeaebbf f7cd53cedd78
comparison
equal deleted inserted replaced
4946:69333a2fbae2 4947:fd8114661503
165 165
166 bool Compile::need_stack_bang(int frame_size_in_bytes) const { 166 bool Compile::need_stack_bang(int frame_size_in_bytes) const {
167 // Determine if we need to generate a stack overflow check. 167 // Determine if we need to generate a stack overflow check.
168 // Do it if the method is not a stub function and 168 // Do it if the method is not a stub function and
169 // has java calls or has frame size > vm_page_size/8. 169 // has java calls or has frame size > vm_page_size/8.
170 return (stub_function() == NULL && 170 return (UseStackBanging && stub_function() == NULL &&
171 (has_java_calls() || frame_size_in_bytes > os::vm_page_size()>>3)); 171 (has_java_calls() || frame_size_in_bytes > os::vm_page_size()>>3));
172 } 172 }
173 173
174 bool Compile::need_register_stack_bang() const { 174 bool Compile::need_register_stack_bang() const {
175 // Determine if we need to generate a register stack overflow check. 175 // Determine if we need to generate a register stack overflow check.