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 874 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
885 emitLiveRangesEnded(Str, Func, &I, LiveRegCount); | 885 emitLiveRangesEnded(Str, Func, &I, LiveRegCount); |
886 Str << "\n"; | 886 Str << "\n"; |
887 updateStats(Func, &I); | 887 updateStats(Func, &I); |
888 } | 888 } |
889 if (DecorateAsm) | 889 if (DecorateAsm) |
890 emitRegisterUsage(Str, Func, this, false, LiveRegCount); | 890 emitRegisterUsage(Str, Func, this, false, LiveRegCount); |
891 } | 891 } |
892 | 892 |
893 void CfgNode::emitIAS(Cfg *Func) const { | 893 void CfgNode::emitIAS(Cfg *Func) const { |
894 Func->setCurrentNode(this); | 894 Func->setCurrentNode(this); |
895 Assembler *Asm = Func->getAssembler<Assembler>(); | 895 Assembler *Asm = Func->getAssembler<>(); |
896 Asm->BindCfgNodeLabel(getIndex()); | 896 Asm->BindCfgNodeLabel(getIndex()); |
897 for (const Inst &I : Phis) { | 897 for (const Inst &I : Phis) { |
898 if (I.isDeleted()) | 898 if (I.isDeleted()) |
899 continue; | 899 continue; |
900 // Emitting a Phi instruction should cause an error. | 900 // Emitting a Phi instruction should cause an error. |
901 I.emitIAS(Func); | 901 I.emitIAS(Func); |
902 } | 902 } |
903 for (const Inst &I : Insts) { | 903 for (const Inst &I : Insts) { |
904 if (I.isDeleted()) | 904 if (I.isDeleted()) |
905 continue; | 905 continue; |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
984 if (!First) | 984 if (!First) |
985 Str << ", "; | 985 Str << ", "; |
986 First = false; | 986 First = false; |
987 Str << "%" << I->getName(); | 987 Str << "%" << I->getName(); |
988 } | 988 } |
989 Str << "\n"; | 989 Str << "\n"; |
990 } | 990 } |
991 } | 991 } |
992 | 992 |
993 } // end of namespace Ice | 993 } // end of namespace Ice |
OLD | NEW |