6761594: framesize rounding code rounds using wrong units leading to slightly oversized frames
Reviewed-by: rasbold, kvn
--- a/hotspot/src/share/vm/opto/chaitin.cpp Thu Nov 06 14:59:10 2008 -0800
+++ b/hotspot/src/share/vm/opto/chaitin.cpp Thu Nov 06 20:00:03 2008 -0800
@@ -440,9 +440,7 @@
assert((int)(_matcher._new_SP+_framesize) >= (int)_matcher._out_arg_limit, "framesize must be large enough");
// This frame must preserve the required fp alignment
- const int stack_alignment_in_words = Matcher::stack_alignment_in_slots();
- if (stack_alignment_in_words > 0)
- _framesize = round_to(_framesize, Matcher::stack_alignment_in_bytes());
+ _framesize = round_to(_framesize, Matcher::stack_alignment_in_slots());
assert( _framesize >= 0 && _framesize <= 1000000, "sanity check" );
#ifndef PRODUCT
_total_framesize += _framesize;