|
[ignition] Eliminate hole checks where statically possible for loads and stores
Move hole check logic from full-codegen into scope analysis, and store the
"needs hole check" bit on VariableProxy. This makes it easy to re-use in
any backend: it will be trivial to extend the use of this logic in, e.g.,
full-codegen variable stores.
While changing the signatures of the variable loading/storing methods in
Ignition, I took the liberty of replacing the verb "Visit" with "Build", since these
are not part of AST visiting.
BUG= v8:5460
Committed: https://crrev.com/35a3ccbfac415f7ab53ed5a63b03ed366d29a104
Cr-Commit-Position: refs/heads/master@{#40479}
Total comments: 5
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+230 lines, -320 lines) |
Patch |
|
M |
src/ast/ast.h
|
View
|
1
2
3
|
2 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/ast/ast.cc
|
View
|
1
2
3
|
2 chunks |
+6 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/ast/scopes.h
|
View
|
1
2
3
4
5
6
|
1 chunk |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/ast/scopes.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
4 chunks |
+57 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/ast/variables.h
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+6 lines, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/arm/full-codegen-arm.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/arm64/full-codegen-arm64.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/full-codegen.h
|
View
|
1
2
3
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/full-codegen.cc
|
View
|
1
|
1 chunk |
+0 lines, -59 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/ia32/full-codegen-ia32.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/mips/full-codegen-mips.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/mips64/full-codegen-mips64.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/ppc/full-codegen-ppc.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/s390/full-codegen-s390.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/x64/full-codegen-x64.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/x87/full-codegen-x87.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-generator.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+6 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/interpreter/bytecode-generator.cc
|
View
|
1
2
3
4
5
6
7
|
25 chunks |
+57 lines, -51 lines |
0 comments
|
Download
|
|
M |
src/parsing/parser.h
|
View
|
1
2
3
4
5
6
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/parsing/parser.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+17 lines, -4 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/BasicLoops.golden
|
View
|
1
|
2 chunks |
+6 lines, -22 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/BreakableBlocks.golden
|
View
|
1
|
2 chunks |
+5 lines, -25 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/ClassDeclarations.golden
|
View
|
1
|
2 chunks |
+3 lines, -8 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/ConstVariable.golden
|
View
|
1
|
3 chunks |
+6 lines, -17 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/ConstVariableContextSlot.golden
|
View
|
1
|
4 chunks |
+5 lines, -17 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/Generators.golden
|
View
|
1
4
5
6
7
8
9
10
|
11 chunks |
+21 lines, -28 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/LetVariable.golden
|
View
|
1
|
3 chunks |
+6 lines, -17 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/LetVariableContextSlot.golden
|
View
|
1
|
4 chunks |
+5 lines, -18 lines |
0 comments
|
Download
|
|
M |
test/cctest/interpreter/bytecode_expectations/Modules.golden
|
View
|
1
2
3
4
5
6
7
8
9
10
|
6 chunks |
+2 lines, -18 lines |
0 comments
|
Download
|
Total messages: 59 (43 generated)
|