X87: Switch full-codegen from StackHandlers to handler table.
authorchunyang.dai <chunyang.dai@intel.com>
Thu, 26 Mar 2015 13:06:47 +0000 (06:06 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 26 Mar 2015 13:06:56 +0000 (13:06 +0000)
commit1caa6179d2c71c3f50b7f7bc41d0cf6031133e6a
treeeb748a5d8f4db6f46ffaeeb020c596b045f8aaa4
parentfced43a6862ec8b8743951ae044fe43427834d3f
X87:  Switch full-codegen from StackHandlers to handler table.

port 38a719f965d0a83ddac04392d5b9c5abe214281c  (r27440)

original commit message:

    This switches full-codegen to no longer push and pop StackHandler
    markers onto the operand stack, but relies on a range-based handler
    table instead. We only use StackHandlers in JSEntryStubs to mark the
    transition from C to JS code.

    Note that this makes deoptimization and OSR from within any try-block
    work out of the box, makes the non-exception paths faster and should
    overall be neutral on the memory footprint (pros).

    On the other hand it makes the exception paths slower and actually
    throwing and exception more expensive (cons).

BUG=

Review URL: https://codereview.chromium.org/1030283003

Cr-Commit-Position: refs/heads/master@{#27478}
src/x87/code-stubs-x87.cc
src/x87/full-codegen-x87.cc
src/x87/macro-assembler-x87.cc
src/x87/macro-assembler-x87.h