Mercurial > hg > truffle
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. |