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