OLD | NEW |
1 //===- subzero/src/IceInstARM32.cpp - ARM32 instruction implementation ----===// | 1 //===- subzero/src/IceInstARM32.cpp - ARM32 instruction 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 /// \file | 10 /// \file |
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
811 : InstARM32(Func, InstARM32::Call, 1, Dest) { | 811 : InstARM32(Func, InstARM32::Call, 1, Dest) { |
812 HasSideEffects = true; | 812 HasSideEffects = true; |
813 addSource(CallTarget); | 813 addSource(CallTarget); |
814 } | 814 } |
815 | 815 |
816 InstARM32Label::InstARM32Label(Cfg *Func, TargetARM32 *Target) | 816 InstARM32Label::InstARM32Label(Cfg *Func, TargetARM32 *Target) |
817 : InstARM32(Func, InstARM32::Label, 0, nullptr), | 817 : InstARM32(Func, InstARM32::Label, 0, nullptr), |
818 Number(Target->makeNextLabelNumber()) {} | 818 Number(Target->makeNextLabelNumber()) {} |
819 | 819 |
820 IceString InstARM32Label::getName(const Cfg *Func) const { | 820 IceString InstARM32Label::getName(const Cfg *Func) const { |
| 821 if (!BuildDefs::dump()) |
| 822 return IceString(); |
821 return ".L" + Func->getFunctionName() + "$local$__" + std::to_string(Number); | 823 return ".L" + Func->getFunctionName() + "$local$__" + std::to_string(Number); |
822 } | 824 } |
823 | 825 |
824 namespace { | 826 namespace { |
825 // Requirements for Push/Pop: | 827 // Requirements for Push/Pop: |
826 // 1) All the Variables have the same type; | 828 // 1) All the Variables have the same type; |
827 // 2) All the variables have registers assigned to them. | 829 // 2) All the variables have registers assigned to them. |
828 void validatePushOrPopRegisterListOrDie(const VarList &RegList) { | 830 void validatePushOrPopRegisterListOrDie(const VarList &RegList) { |
829 Type PreviousTy = IceType_void; | 831 Type PreviousTy = IceType_void; |
830 for (Variable *Reg : RegList) { | 832 for (Variable *Reg : RegList) { |
(...skipping 1947 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2778 | 2780 |
2779 template class InstARM32FourAddrGPR<InstARM32::Mla>; | 2781 template class InstARM32FourAddrGPR<InstARM32::Mla>; |
2780 template class InstARM32FourAddrGPR<InstARM32::Mls>; | 2782 template class InstARM32FourAddrGPR<InstARM32::Mls>; |
2781 | 2783 |
2782 template class InstARM32CmpLike<InstARM32::Cmn>; | 2784 template class InstARM32CmpLike<InstARM32::Cmn>; |
2783 template class InstARM32CmpLike<InstARM32::Cmp>; | 2785 template class InstARM32CmpLike<InstARM32::Cmp>; |
2784 template class InstARM32CmpLike<InstARM32::Tst>; | 2786 template class InstARM32CmpLike<InstARM32::Tst>; |
2785 | 2787 |
2786 } // end of namespace ARM32 | 2788 } // end of namespace ARM32 |
2787 } // end of namespace Ice | 2789 } // end of namespace Ice |
OLD | NEW |