| OLD | NEW |
| 1 //===- subzero/src/IceAssemblerARM32.h - Assembler for ARM32 ----*- C++ -*-===// | 1 //===- subzero/src/IceAssemblerARM32.h - Assembler for ARM32 ----*- C++ -*-===// |
| 2 // | 2 // |
| 3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 4 // for details. All rights reserved. Use of this source code is governed by a | 4 // for details. All rights reserved. Use of this source code is governed by a |
| 5 // BSD-style license that can be found in the LICENSE file. | 5 // BSD-style license that can be found in the LICENSE file. |
| 6 // | 6 // |
| 7 // Modified by the Subzero authors. | 7 // Modified by the Subzero authors. |
| 8 // | 8 // |
| 9 //===----------------------------------------------------------------------===// | 9 //===----------------------------------------------------------------------===// |
| 10 // | 10 // |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 140 } | 140 } |
| 141 | 141 |
| 142 Label *getOrCreateCfgNodeLabel(SizeT NodeNumber) { | 142 Label *getOrCreateCfgNodeLabel(SizeT NodeNumber) { |
| 143 return getOrCreateLabel(NodeNumber, CfgNodeLabels); | 143 return getOrCreateLabel(NodeNumber, CfgNodeLabels); |
| 144 } | 144 } |
| 145 | 145 |
| 146 Label *getOrCreateLocalLabel(SizeT Number) { | 146 Label *getOrCreateLocalLabel(SizeT Number) { |
| 147 return getOrCreateLabel(Number, LocalLabels); | 147 return getOrCreateLabel(Number, LocalLabels); |
| 148 } | 148 } |
| 149 | 149 |
| 150 void bindLocalLabel(const Cfg *Func, const InstARM32Label *InstL, | 150 void bindLocalLabel(const InstARM32Label *InstL, SizeT Number) { |
| 151 SizeT Number) { | 151 if (BuildDefs::dump() && !getFlags().getDisableHybridAssembly()) { |
| 152 if (BuildDefs::dump() && | |
| 153 !Func->getContext()->getFlags().getDisableHybridAssembly()) { | |
| 154 constexpr SizeT InstSize = 0; | 152 constexpr SizeT InstSize = 0; |
| 155 emitTextInst(InstL->getLabelName() + ":", InstSize); | 153 emitTextInst(InstL->getLabelName() + ":", InstSize); |
| 156 } | 154 } |
| 157 Label *L = getOrCreateLocalLabel(Number); | 155 Label *L = getOrCreateLocalLabel(Number); |
| 158 if (!getPreliminary()) | 156 if (!getPreliminary()) |
| 159 this->bind(L); | 157 this->bind(L); |
| 160 } | 158 } |
| 161 | 159 |
| 162 bool fixupIsPCRel(FixupKind Kind) const override { | 160 bool fixupIsPCRel(FixupKind Kind) const override { |
| 163 if (Kind == llvm::ELF::R_ARM_MOVW_PREL_NC) | 161 if (Kind == llvm::ELF::R_ARM_MOVW_PREL_NC) |
| (...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 760 | 758 |
| 761 void emitVFPsss(CondARM32::Cond Cond, IValueT Opcode, const Operand *OpSd, | 759 void emitVFPsss(CondARM32::Cond Cond, IValueT Opcode, const Operand *OpSd, |
| 762 const Operand *OpSn, const Operand *OpSm, | 760 const Operand *OpSn, const Operand *OpSm, |
| 763 const char *InstName); | 761 const char *InstName); |
| 764 }; | 762 }; |
| 765 | 763 |
| 766 } // end of namespace ARM32 | 764 } // end of namespace ARM32 |
| 767 } // end of namespace Ice | 765 } // end of namespace Ice |
| 768 | 766 |
| 769 #endif // SUBZERO_SRC_ICEASSEMBLERARM32_H | 767 #endif // SUBZERO_SRC_ICEASSEMBLERARM32_H |
| OLD | NEW |