Go to file
sgjesse@chromium.org 34d6ff7606 Implemented missing pieces of the debugger for ARM.
The main piece of this change was to add support for break on return for ARM. On ARM the normal js function return consist of the following code sequence.

  mov sp, fp
  ldmia sp!, {fp, lr}
  add sp, sp, #4
  bx lr

to a call to the debug break return entry code using the following code sequence

  mov lr, pc
  ldr pc, [pc, #-4]
  <debug break return entry code entry point address>
  bktp 0

The values of Assembler::kPatchReturnSequenceLength and Assembler::kPatchReturnSequenceLength are somewhat misleading, but they fit the current use in the debugger. Also Assembler::kPatchReturnSequenceLength is used in the IC code as well (for something which is not related to return sequences at all). I will change that in a separate changelist.

For the debugger to work also added recording of the return sequence in the relocation info and handling of source position recording when a function ends with a return statement.

Used the constant kInstrSize instead of sizeof(Instr).

Passes all debugger tests on both simulator and hardware (only release mode tested on hardware).
Review URL: http://codereview.chromium.org/199075

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-09-14 06:57:24 +00:00
benchmarks Remove svn:executable flag from run.html and style.css and change the mime-type of style.css to text/css. 2009-07-15 10:37:10 +00:00
include Made function prototype property DontEnum for compatibility with 2009-09-09 09:30:33 +00:00
samples Add a "read" extension to the shell programs. This global function 2009-04-17 21:04:34 +00:00
src Implemented missing pieces of the debugger for ARM. 2009-09-14 06:57:24 +00:00
test Implemented missing pieces of the debugger for ARM. 2009-09-14 06:57:24 +00:00
tools Control profiling/debugger support from build script. 2009-09-11 12:26:15 +00:00
.gitignore Add .gitignore file similar to Chromium's one. 2009-08-05 11:52:59 +00:00
AUTHORS Const Correctness for String::Value 2009-09-07 07:54:51 +00:00
ChangeLog Prepare push to trunk. Now working on version 1.3.11. 2009-09-09 19:03:20 +00:00
LICENSE Land change to notify valgrind when we modify code on x86. This does 2009-08-11 15:23:06 +00:00
SConstruct Control profiling/debugger support from build script. 2009-09-11 12:26:15 +00:00