Reviewers: Kasper Lund, Description: RFC: Switch to ast ids (instead of positions) for type feedback.
The goal here is to avoid having several pieces of type feedback tied to a single position. Since everything else already relied on ast ids, it seemed natural to use them for type feedback as well[*]. The implementation squeezes in a new reloc info mode (CODE_TARGET_WITH_ID) which is used for calls to IC stubs from the code generated by the full codegen. The new mode should (in most cases) use just one extra byte per call in the encoded form. The type feedback oracle can simply focus on this reloc info mode. [*]: I did play with disambiguating positions, but because of the implicit way they are set, it's hard to be sure all the cases are fixed. Please review this at http://codereview.chromium.org/5699002/ Affected files: M src/accessors.cc M src/arm/lithium-arm.h M src/arm/lithium-arm.cc M src/assembler.h M src/assembler.cc M src/ast.h M src/ast.cc M src/compiler.h M src/compiler.cc M src/deoptimizer.h M src/deoptimizer.cc M src/disassembler.cc M src/frames.h M src/frames.cc M src/full-codegen.h M src/full-codegen.cc M src/handles.h M src/handles.cc M src/hydrogen-instructions.h M src/hydrogen.h M src/hydrogen.cc M src/ia32/assembler-ia32-inl.h M src/ia32/assembler-ia32.h M src/ia32/assembler-ia32.cc M src/ia32/deoptimizer-ia32.cc M src/ia32/full-codegen-ia32.cc M src/ia32/lithium-ia32.h M src/ia32/lithium-ia32.cc M src/ia32/macro-assembler-ia32.h M src/ia32/macro-assembler-ia32.cc M src/objects.h M src/objects.cc M src/runtime.cc M src/safepoint-table.h M src/type-info.h M src/type-info.cc M src/v8globals.h M test/cctest/test-debug.cc -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
