MIPS: Add a level of indirection to exception handler addresses.
authorkmillikin@chromium.org <kmillikin@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 21 Nov 2011 14:05:18 +0000 (14:05 +0000)
committerkmillikin@chromium.org <kmillikin@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 21 Nov 2011 14:05:18 +0000 (14:05 +0000)
commit29b5ceb897ed99ea39b8f56fa5f36a950d2f6e13
treecc8647a154e1dc275fcf898bb53279bc02460ece
parent561b5716d71ab2c1dbce364db2b7358dd4d8fdba
MIPS: Add a level of indirection to exception handler addresses.

Port r9977 (9aded78be4).
Note: This is the port of the reapplied patch, not the original.

Original commit message:

To support deoptimization of exception handlers, the handler address in the
stack is converted to a pair of code object and an index into a separate
table of code offsets.  The index part is invariant under deoptimization.
The index is packed into the handler state field so that handler size does
not change.

BUG=
TEST=

Review URL: http://codereview.chromium.org/8557003
Patch from Gergely Kis <gergely@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/mips/code-stubs-mips.cc
src/mips/code-stubs-mips.h
src/mips/frames-mips.h
src/mips/full-codegen-mips.cc
src/mips/macro-assembler-mips.cc
src/mips/macro-assembler-mips.h