src/cpu/x86/vm/c1_MacroAssembler_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Thu Mar 20 11:28:53 2014
--- new/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Thu Mar 20 11:28:52 2014

*** 347,363 **** --- 347,364 ---- const int ic_cmp_size = LP64_ONLY(10) NOT_LP64(9); assert(UseCompressedClassPointers || offset() - start_offset == ic_cmp_size, "check alignment in emit_method_entry"); } ! void C1_MacroAssembler::build_frame(int frame_size_in_bytes, int bang_size_in_bytes) { + assert(bang_size_in_bytes >= frame_size_in_bytes, "stack bang size incorrect"); // Make sure there is enough stack space for this method's activation. // Note that we do this before doing an enter(). This matches the // ordering of C2's stack overflow check / rsp decrement and allows // the SharedRuntime stack overflow handling to be consistent // between the two compilers. ! generate_stack_overflow_check(frame_size_in_bytes); ! generate_stack_overflow_check(bang_size_in_bytes); push(rbp); #ifdef TIERED // c2 leaves fpu stack dirty. Clean it on entry if (UseSSE < 2 ) {

src/cpu/x86/vm/c1_MacroAssembler_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File