equal
deleted
inserted
replaced
2063 // instruction fits that requirement. |
2063 // instruction fits that requirement. |
2064 |
2064 |
2065 // Generate stack overflow check |
2065 // Generate stack overflow check |
2066 |
2066 |
2067 if (UseStackBanging) { |
2067 if (UseStackBanging) { |
2068 __ bang_stack_with_offset(StackShadowPages*os::vm_page_size()); |
2068 __ bang_stack_with_offset((int)JavaThread::stack_shadow_zone_size()); |
2069 } else { |
2069 } else { |
2070 // need a 5 byte instruction to allow MT safe patching to non-entrant |
2070 // need a 5 byte instruction to allow MT safe patching to non-entrant |
2071 __ fat_nop(); |
2071 __ fat_nop(); |
2072 } |
2072 } |
2073 |
2073 |
2497 __ movl(Address(r15_thread, JavaThread::thread_state_offset()), _thread_in_Java); |
2497 __ movl(Address(r15_thread, JavaThread::thread_state_offset()), _thread_in_Java); |
2498 __ bind(after_transition); |
2498 __ bind(after_transition); |
2499 |
2499 |
2500 Label reguard; |
2500 Label reguard; |
2501 Label reguard_done; |
2501 Label reguard_done; |
2502 __ cmpl(Address(r15_thread, JavaThread::stack_guard_state_offset()), JavaThread::stack_guard_yellow_disabled); |
2502 __ cmpl(Address(r15_thread, JavaThread::stack_guard_state_offset()), JavaThread::stack_guard_yellow_reserved_disabled); |
2503 __ jcc(Assembler::equal, reguard); |
2503 __ jcc(Assembler::equal, reguard); |
2504 __ bind(reguard_done); |
2504 __ bind(reguard_done); |
2505 |
2505 |
2506 // native result if any is live |
2506 // native result if any is live |
2507 |
2507 |