[Interpreter] Pass context to interpreter bytecode handlers and add LoadConstextSlot
authorrmcilroy <rmcilroy@chromium.org>
Mon, 24 Aug 2015 10:25:34 +0000 (03:25 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 24 Aug 2015 10:25:50 +0000 (10:25 +0000)
commitbfdc22d7fc1bc046a38770a676619eee613222f3
tree6da504c7adc7a5afe9c731e092caca5e408e0d8b
parent53ac9fe8f9fa57f0f6d2960d5de92b9236bd871a
[Interpreter] Pass context to interpreter bytecode handlers and add LoadConstextSlot

Passes the current context to bytecode interpreter handlers. This is held in the
context register on all architectures except for ia32 where there are too few
registers and it is instead spilled to the stack.

Also changes Load/StoreRegister to use kMachAnyTagged representation since they
should only ever hold tagged values.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#30325}
src/compiler/interpreter-assembler.cc
src/compiler/interpreter-assembler.h
src/compiler/linkage.cc
src/compiler/linkage.h
src/compiler/raw-machine-assembler.cc
src/compiler/raw-machine-assembler.h
src/ia32/builtins-ia32.cc
src/ia32/macro-assembler-ia32.h
test/unittests/compiler/interpreter-assembler-unittest.cc
test/unittests/compiler/node-test-utils.cc
test/unittests/compiler/node-test-utils.h