|
[Interpreter] Add support for short (16 bit) operands.
Adds support for short operands, starting with kIdx16. Introduces
BytecodeTraits to enable compile time determination of various traits for a
bytecode, such as size, operands, etc. Reworks BytecodeIterator,
BytecodeArrayBuilder and Bytecodes::Decode to support 16 bit operands. Adds
support to Interpreter to load 16 bit operands.
Also fixes a bug with ToBoolean where it wouldn't get emitted at the start
of a block, and added a test.
BytecodeTraits template magic inspired by oth@chromium.org.
BUG= v8:4280
LOG=N
Committed: https://crrev.com/03369ed2cb95d26e174e603152aace966c866077
Cr-Commit-Position: refs/heads/master@{#31058}
Total comments: 6
Total comments: 10
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+730 lines, -228 lines) |
Patch |
|
M |
BUILD.gn
|
View
|
1
2
3
4
5
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/bytecode-graph-builder.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/interpreter-assembler.h
|
View
|
1
2
3
|
3 chunks |
+10 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/compiler/interpreter-assembler.cc
|
View
|
1
2
3
4
|
4 chunks |
+69 lines, -8 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-array-builder.h
|
View
|
1
2
3
4
5
|
1 chunk |
+8 lines, -8 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-array-builder.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+45 lines, -27 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-array-iterator.h
|
View
|
1
2
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-array-iterator.cc
|
View
|
1
2
|
1 chunk |
+22 lines, -8 lines |
0 comments
|
Download
|
|
A |
src/interpreter/bytecode-traits.h
|
View
|
1
2
|
1 chunk |
+180 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecodes.h
|
View
|
1
2
3
4
5
|
6 chunks |
+103 lines, -74 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecodes.cc
|
View
|
1
2
3
4
5
|
8 chunks |
+119 lines, -41 lines |
0 comments
|
Download
|
|
M |
src/interpreter/interpreter.cc
|
View
|
1
2
3
|
11 chunks |
+16 lines, -16 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/test-bytecode-generator.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+21 lines, -6 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/interpreter-assembler-unittest.h
|
View
|
1
2
|
1 chunk |
+3 lines, -2 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/interpreter-assembler-unittest.cc
|
View
|
1
2
|
4 chunks |
+54 lines, -12 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/node-test-utils.h
|
View
|
1
2
|
2 chunks |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/node-test-utils.cc
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/unittests/interpreter/bytecode-array-builder-unittest.cc
|
View
|
1
2
|
6 chunks |
+63 lines, -17 lines |
0 comments
|
Download
|
|
M |
test/unittests/interpreter/bytecode-array-iterator-unittest.cc
|
View
|
1
2
3
4
|
2 chunks |
+4 lines, -1 line |
0 comments
|
Download
|
|
M |
tools/gyp/v8.gyp
|
View
|
1
2
3
4
5
|
1 chunk |
+3 lines, -2 lines |
0 comments
|
Download
|
Dependent Patchsets:
Total messages: 35 (16 generated)
|