| OLD | NEW |
| 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 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 344 // validation is not.) | 344 // validation is not.) |
| 345 llvm::BitVector LiveOrig = Live; | 345 llvm::BitVector LiveOrig = Live; |
| 346 Live.resize(Liveness->getNumGlobalVars()); | 346 Live.resize(Liveness->getNumGlobalVars()); |
| 347 // Non-global arguments in the entry node are allowed to be live on | 347 // Non-global arguments in the entry node are allowed to be live on |
| 348 // entry. | 348 // entry. |
| 349 bool IsEntry = (Func->getEntryNode() == this); | 349 bool IsEntry = (Func->getEntryNode() == this); |
| 350 if (!(IsEntry || Live == LiveOrig)) { | 350 if (!(IsEntry || Live == LiveOrig)) { |
| 351 // This is a fatal liveness consistency error. Print some | 351 // This is a fatal liveness consistency error. Print some |
| 352 // diagnostics and abort. | 352 // diagnostics and abort. |
| 353 Ostream &Str = Func->getContext()->getStrDump(); | 353 Ostream &Str = Func->getContext()->getStrDump(); |
| 354 Func->setCurrentNode(NULL); | 354 Func->resetCurrentNode(); |
| 355 Str << "LiveOrig-Live ="; | 355 Str << "LiveOrig-Live ="; |
| 356 for (SizeT i = Live.size(); i < LiveOrig.size(); ++i) { | 356 for (SizeT i = Live.size(); i < LiveOrig.size(); ++i) { |
| 357 if (LiveOrig.test(i)) { | 357 if (LiveOrig.test(i)) { |
| 358 Str << " "; | 358 Str << " "; |
| 359 Liveness->getVariable(i, this)->dump(Func); | 359 Liveness->getVariable(i, this)->dump(Func); |
| 360 } | 360 } |
| 361 } | 361 } |
| 362 Str << "\n"; | 362 Str << "\n"; |
| 363 llvm_unreachable("Fatal inconsistency in liveness analysis"); | 363 llvm_unreachable("Fatal inconsistency in liveness analysis"); |
| 364 } | 364 } |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 578 I != E; ++I) { | 578 I != E; ++I) { |
| 579 if (I != OutEdges.begin()) | 579 if (I != OutEdges.begin()) |
| 580 Str << ", "; | 580 Str << ", "; |
| 581 Str << "%" << (*I)->getName(); | 581 Str << "%" << (*I)->getName(); |
| 582 } | 582 } |
| 583 Str << "\n"; | 583 Str << "\n"; |
| 584 } | 584 } |
| 585 } | 585 } |
| 586 | 586 |
| 587 } // end of namespace Ice | 587 } // end of namespace Ice |
| OLD | NEW |