comparison src/cpu/sparc/vm/stubGenerator_sparc.cpp @ 1844:75588558f1bf

6980792: Crash "exception happened outside interpreter, nmethods and vtable stubs (1)" Reviewed-by: kvn
author never
date Thu, 07 Oct 2010 21:40:55 -0700
parents 065dd1ca3ab6
children f95d63e2154a
comparison
equal deleted inserted replaced
1832:22e4420d19f7 1844:75588558f1bf
2584 // If this will cause trouble, let's fail now instead of later. 2584 // If this will cause trouble, let's fail now instead of later.
2585 __ save_frame(0); 2585 __ save_frame(0);
2586 __ restore(); 2586 __ restore();
2587 #endif 2587 #endif
2588 2588
2589 assert_clean_int(O2_count, G1); // Make sure 'count' is clean int.
2590
2589 #ifdef ASSERT 2591 #ifdef ASSERT
2590 // caller guarantees that the arrays really are different 2592 // caller guarantees that the arrays really are different
2591 // otherwise, we would have to make conjoint checks 2593 // otherwise, we would have to make conjoint checks
2592 { Label L; 2594 { Label L;
2593 __ mov(O3, G1); // spill: overlap test smashes O3 2595 __ mov(O3, G1); // spill: overlap test smashes O3
2597 __ bind(L); 2599 __ bind(L);
2598 __ mov(G1, O3); 2600 __ mov(G1, O3);
2599 __ mov(G4, O4); 2601 __ mov(G4, O4);
2600 } 2602 }
2601 #endif //ASSERT 2603 #endif //ASSERT
2602
2603 assert_clean_int(O2_count, G1); // Make sure 'count' is clean int.
2604 2604
2605 checkcast_copy_entry = __ pc(); 2605 checkcast_copy_entry = __ pc();
2606 // caller can pass a 64-bit byte count here (from generic stub) 2606 // caller can pass a 64-bit byte count here (from generic stub)
2607 BLOCK_COMMENT("Entry:"); 2607 BLOCK_COMMENT("Entry:");
2608 2608