Revision: 7203 Author: [email protected] Date: Wed Mar 16 05:47:43 2011 Log: ARM: Fix the debugger using wrong break stub for slot breaks
On ARM the break at break slots wrongly used the break at return stub which assumes an object opinter in r0. At break slots there are no objects live in registers so a GC while at a break on a break stub could cause a crash as r0 was wrongly pushed on a internal frame to be handled by GC.
Review URL: http://codereview.chromium.org/6676037 http://code.google.com/p/v8/source/detail?r=7203 Modified: /branches/bleeding_edge/src/arm/debug-arm.cc ======================================= --- /branches/bleeding_edge/src/arm/debug-arm.cc Tue Dec 7 03:01:02 2010 +++ /branches/bleeding_edge/src/arm/debug-arm.cc Wed Mar 16 05:47:43 2011 @@ -115,7 +115,7 @@ patcher.masm()->mov(v8::internal::lr, v8::internal::pc); patcher.masm()->ldr(v8::internal::pc, MemOperand(v8::internal::pc, -4)); #endif - patcher.Emit(Debug::debug_break_return()->entry()); + patcher.Emit(Debug::debug_break_slot()->entry()); } -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
