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

Side by Side Diff: src/compiler/verifier.cc

Issue 2394213003: Named all zones in the project (Closed)
Patch Set: Merge branch 'master' into zonenames Created 4 years, 2 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
« no previous file with comments | « src/compiler/type-cache.h ('k') | src/compiler/wasm-compiler.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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/verifier.h" 5 #include "src/compiler/verifier.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 #include <queue> 9 #include <queue>
10 #include <sstream> 10 #include <sstream>
(...skipping 1286 matching lines...) Expand 10 before | Expand all | Expand 10 after
1297 #undef SIMD_MACHINE_OP_CASE 1297 #undef SIMD_MACHINE_OP_CASE
1298 1298
1299 // TODO(rossberg): Check. 1299 // TODO(rossberg): Check.
1300 break; 1300 break;
1301 } 1301 }
1302 } // NOLINT(readability/fn_size) 1302 } // NOLINT(readability/fn_size)
1303 1303
1304 void Verifier::Run(Graph* graph, Typing typing, CheckInputs check_inputs) { 1304 void Verifier::Run(Graph* graph, Typing typing, CheckInputs check_inputs) {
1305 CHECK_NOT_NULL(graph->start()); 1305 CHECK_NOT_NULL(graph->start());
1306 CHECK_NOT_NULL(graph->end()); 1306 CHECK_NOT_NULL(graph->end());
1307 Zone zone(graph->zone()->allocator()); 1307 Zone zone(graph->zone()->allocator(), ZONE_NAME);
1308 Visitor visitor(&zone, typing, check_inputs); 1308 Visitor visitor(&zone, typing, check_inputs);
1309 AllNodes all(&zone, graph); 1309 AllNodes all(&zone, graph);
1310 for (Node* node : all.reachable) visitor.Check(node); 1310 for (Node* node : all.reachable) visitor.Check(node);
1311 1311
1312 // Check the uniqueness of projections. 1312 // Check the uniqueness of projections.
1313 for (Node* proj : all.reachable) { 1313 for (Node* proj : all.reachable) {
1314 if (proj->opcode() != IrOpcode::kProjection) continue; 1314 if (proj->opcode() != IrOpcode::kProjection) continue;
1315 Node* node = proj->InputAt(0); 1315 Node* node = proj->InputAt(0);
1316 for (Node* other : node->uses()) { 1316 for (Node* other : node->uses()) {
1317 if (all.IsLive(other) && other != proj && 1317 if (all.IsLive(other) && other != proj &&
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
1387 "Node #%d:%s in B%d is not dominated by control input #%d:%s", 1387 "Node #%d:%s in B%d is not dominated by control input #%d:%s",
1388 node->id(), node->op()->mnemonic(), block->rpo_number(), 1388 node->id(), node->op()->mnemonic(), block->rpo_number(),
1389 ctl->id(), ctl->op()->mnemonic()); 1389 ctl->id(), ctl->op()->mnemonic());
1390 } 1390 }
1391 } 1391 }
1392 } 1392 }
1393 1393
1394 1394
1395 void ScheduleVerifier::Run(Schedule* schedule) { 1395 void ScheduleVerifier::Run(Schedule* schedule) {
1396 const size_t count = schedule->BasicBlockCount(); 1396 const size_t count = schedule->BasicBlockCount();
1397 Zone tmp_zone(schedule->zone()->allocator()); 1397 Zone tmp_zone(schedule->zone()->allocator(), ZONE_NAME);
1398 Zone* zone = &tmp_zone; 1398 Zone* zone = &tmp_zone;
1399 BasicBlock* start = schedule->start(); 1399 BasicBlock* start = schedule->start();
1400 BasicBlockVector* rpo_order = schedule->rpo_order(); 1400 BasicBlockVector* rpo_order = schedule->rpo_order();
1401 1401
1402 // Verify the RPO order contains only blocks from this schedule. 1402 // Verify the RPO order contains only blocks from this schedule.
1403 CHECK_GE(count, rpo_order->size()); 1403 CHECK_GE(count, rpo_order->size());
1404 for (BasicBlockVector::iterator b = rpo_order->begin(); b != rpo_order->end(); 1404 for (BasicBlockVector::iterator b = rpo_order->begin(); b != rpo_order->end();
1405 ++b) { 1405 ++b) {
1406 CHECK_EQ((*b), schedule->GetBlockById((*b)->id())); 1406 CHECK_EQ((*b), schedule->GetBlockById((*b)->id()));
1407 // All predecessors and successors should be in rpo and in this schedule. 1407 // All predecessors and successors should be in rpo and in this schedule.
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
1617 replacement->op()->EffectOutputCount() > 0); 1617 replacement->op()->EffectOutputCount() > 0);
1618 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || 1618 DCHECK(!NodeProperties::IsFrameStateEdge(edge) ||
1619 replacement->opcode() == IrOpcode::kFrameState); 1619 replacement->opcode() == IrOpcode::kFrameState);
1620 } 1620 }
1621 1621
1622 #endif // DEBUG 1622 #endif // DEBUG
1623 1623
1624 } // namespace compiler 1624 } // namespace compiler
1625 } // namespace internal 1625 } // namespace internal
1626 } // namespace v8 1626 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/type-cache.h ('k') | src/compiler/wasm-compiler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698