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

Side by Side Diff: src/IceCfgNode.cpp

Issue 311243006: Fix a C++ violation (Closed) Base URL: https://gerrit.chromium.org/gerrit/p/native_client/pnacl-subzero.git@master
Patch Set: Created 6 years, 6 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 | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceCfgNode.cpp - Basic block (node) implementation -----===// 1 //===- subzero/src/IceCfgNode.cpp - Basic block (node) implementation -----===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 // 9 //
10 // This file implements the CfgNode class, including the complexities 10 // This file implements the CfgNode class, including the complexities
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 // incoming liveness changed from before, false if it stayed the same. 228 // incoming liveness changed from before, false if it stayed the same.
229 // (If it changes, the node's predecessors need to be processed 229 // (If it changes, the node's predecessors need to be processed
230 // again.) 230 // again.)
231 bool CfgNode::liveness(Liveness *Liveness) { 231 bool CfgNode::liveness(Liveness *Liveness) {
232 SizeT NumVars = Liveness->getNumVarsInNode(this); 232 SizeT NumVars = Liveness->getNumVarsInNode(this);
233 llvm::BitVector Live(NumVars); 233 llvm::BitVector Live(NumVars);
234 // Mark the beginning and ending of each variable's live range 234 // Mark the beginning and ending of each variable's live range
235 // with the sentinel instruction number 0. 235 // with the sentinel instruction number 0.
236 std::vector<InstNumberT> &LiveBegin = Liveness->getLiveBegin(this); 236 std::vector<InstNumberT> &LiveBegin = Liveness->getLiveBegin(this);
237 std::vector<InstNumberT> &LiveEnd = Liveness->getLiveEnd(this); 237 std::vector<InstNumberT> &LiveEnd = Liveness->getLiveEnd(this);
238 LiveBegin.assign(NumVars, Inst::NumberSentinel); 238 InstNumberT Sentinel = Inst::NumberSentinel;
239 LiveEnd.assign(NumVars, Inst::NumberSentinel); 239 LiveBegin.assign(NumVars, Sentinel);
240 LiveEnd.assign(NumVars, Sentinel);
240 // Initialize Live to be the union of all successors' LiveIn. 241 // Initialize Live to be the union of all successors' LiveIn.
241 for (NodeList::const_iterator I = OutEdges.begin(), E = OutEdges.end(); 242 for (NodeList::const_iterator I = OutEdges.begin(), E = OutEdges.end();
242 I != E; ++I) { 243 I != E; ++I) {
243 CfgNode *Succ = *I; 244 CfgNode *Succ = *I;
244 Live |= Liveness->getLiveIn(Succ); 245 Live |= Liveness->getLiveIn(Succ);
245 // Mark corresponding argument of phis in successor as live. 246 // Mark corresponding argument of phis in successor as live.
246 for (PhiList::const_iterator I1 = Succ->Phis.begin(), E1 = Succ->Phis.end(); 247 for (PhiList::const_iterator I1 = Succ->Phis.begin(), E1 = Succ->Phis.end();
247 I1 != E1; ++I1) { 248 I1 != E1; ++I1) {
248 (*I1)->livenessPhiOperand(Live, this, Liveness); 249 (*I1)->livenessPhiOperand(Live, this, Liveness);
249 } 250 }
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 I != E; ++I) { 484 I != E; ++I) {
484 if (I != OutEdges.begin()) 485 if (I != OutEdges.begin())
485 Str << ", "; 486 Str << ", ";
486 Str << "%" << (*I)->getName(); 487 Str << "%" << (*I)->getName();
487 } 488 }
488 Str << "\n"; 489 Str << "\n";
489 } 490 }
490 } 491 }
491 492
492 } // end of namespace Ice 493 } // end of namespace Ice
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698