Externalize deoptimization reasons.
authorloislo <loislo@chromium.org>
Thu, 5 Feb 2015 06:24:57 +0000 (22:24 -0800)
committerCommit bot <commit-bot@chromium.org>
Thu, 5 Feb 2015 06:25:18 +0000 (06:25 +0000)
commitec42e002da03adb2db968dd5b7453341ddc59a5c
tree16f5e7f6d1a805e52d268c0e559d447d411365dc
parent9dff8185dd6f1e7e25fe3e9818893d812088b967
Externalize deoptimization reasons.

1) The hardcoded strings were converted into DeoptReason enum.

2) Deopt comment were converted into a pair location and deopt reason entries so
the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.

3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.

BUG=452067
LOG=n

Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
Cr-Commit-Position: refs/heads/master@{#26434}

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

Cr-Commit-Position: refs/heads/master@{#26448}
34 files changed:
src/arm/assembler-arm.cc
src/arm/assembler-arm.h
src/arm/lithium-codegen-arm.cc
src/arm/lithium-codegen-arm.h
src/arm64/assembler-arm64.cc
src/arm64/assembler-arm64.h
src/arm64/lithium-codegen-arm64.cc
src/arm64/lithium-codegen-arm64.h
src/assembler.cc
src/assembler.h
src/code-stubs-hydrogen.cc
src/deoptimizer.cc
src/deoptimizer.h
src/disassembler.cc
src/hydrogen-instructions.h
src/hydrogen.cc
src/hydrogen.h
src/ia32/assembler-ia32.cc
src/ia32/assembler-ia32.h
src/ia32/lithium-codegen-ia32.cc
src/ia32/lithium-codegen-ia32.h
src/lithium-codegen.cc
src/mips/assembler-mips.cc
src/mips/assembler-mips.h
src/mips/lithium-codegen-mips.cc
src/mips/lithium-codegen-mips.h
src/mips64/lithium-codegen-mips64.cc
src/objects.cc
src/ppc/lithium-codegen-ppc.cc
src/x64/assembler-x64.cc
src/x64/assembler-x64.h
src/x64/lithium-codegen-x64.cc
src/x64/lithium-codegen-x64.h
src/x87/lithium-codegen-x87.cc