Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(592)

Side by Side Diff: test/unittests/compiler/escape-analysis-unittest.cc

Issue 2604393002: [turbofan] Utilize maps from field type tracking to eliminate map checks. (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/escape-analysis.h" 5 #include "src/compiler/escape-analysis.h"
6 #include "src/bit-vector.h" 6 #include "src/bit-vector.h"
7 #include "src/compiler/escape-analysis-reducer.h" 7 #include "src/compiler/escape-analysis-reducer.h"
8 #include "src/compiler/graph-visualizer.h" 8 #include "src/compiler/graph-visualizer.h"
9 #include "src/compiler/js-graph.h" 9 #include "src/compiler/js-graph.h"
10 #include "src/compiler/node-properties.h" 10 #include "src/compiler/node-properties.h"
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 return control_ = graph()->NewNode(common()->IfTrue(), control_); 141 return control_ = graph()->NewNode(common()->IfTrue(), control_);
142 } 142 }
143 143
144 Node* IfFalse() { return graph()->NewNode(common()->IfFalse(), control_); } 144 Node* IfFalse() { return graph()->NewNode(common()->IfFalse(), control_); }
145 145
146 Node* Merge2(Node* control1, Node* control2) { 146 Node* Merge2(Node* control1, Node* control2) {
147 return control_ = graph()->NewNode(common()->Merge(2), control1, control2); 147 return control_ = graph()->NewNode(common()->Merge(2), control1, control2);
148 } 148 }
149 149
150 FieldAccess FieldAccessAtIndex(int offset) { 150 FieldAccess FieldAccessAtIndex(int offset) {
151 FieldAccess access = {kTaggedBase, 151 FieldAccess access = {kTaggedBase, offset,
152 offset, 152 MaybeHandle<Name>(), MaybeHandle<Map>(),
153 MaybeHandle<Name>(), 153 Type::Any(), MachineType::AnyTagged(),
154 Type::Any(),
155 MachineType::AnyTagged(),
156 kFullWriteBarrier}; 154 kFullWriteBarrier};
157 return access; 155 return access;
158 } 156 }
159 157
160 ElementAccess MakeElementAccess(int header_size) { 158 ElementAccess MakeElementAccess(int header_size) {
161 ElementAccess access = {kTaggedBase, header_size, Type::Any(), 159 ElementAccess access = {kTaggedBase, header_size, Type::Any(),
162 MachineType::AnyTagged(), kFullWriteBarrier}; 160 MachineType::AnyTagged(), kFullWriteBarrier};
163 return access; 161 return access;
164 } 162 }
165 163
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after
510 ASSERT_EQ(object1, NodeProperties::GetValueInput(object_state, 0)); 508 ASSERT_EQ(object1, NodeProperties::GetValueInput(object_state, 0));
511 ASSERT_EQ(object_state, NodeProperties::GetValueInput(object_state, 1)); 509 ASSERT_EQ(object_state, NodeProperties::GetValueInput(object_state, 1));
512 510
513 Node* object_state2 = NodeProperties::GetValueInput(state_values1, 0); 511 Node* object_state2 = NodeProperties::GetValueInput(state_values1, 0);
514 ASSERT_EQ(object_state, object_state2); 512 ASSERT_EQ(object_state, object_state2);
515 } 513 }
516 514
517 } // namespace compiler 515 } // namespace compiler
518 } // namespace internal 516 } // namespace internal
519 } // namespace v8 517 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/simplified-operator.cc ('k') | test/unittests/compiler/load-elimination-unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698