| OLD | NEW |
| 1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- C++ -*---===// | 1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- 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 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 } | 164 } |
| 165 if (Padding) | 165 if (Padding) |
| 166 nop(Padding); | 166 nop(Padding); |
| 167 } | 167 } |
| 168 | 168 |
| 169 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; | 169 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; |
| 170 void bindCfgNodeLabel(const CfgNode *Node) override; | 170 void bindCfgNodeLabel(const CfgNode *Node) override; |
| 171 Label *getOrCreateCfgNodeLabel(SizeT Number); | 171 Label *getOrCreateCfgNodeLabel(SizeT Number); |
| 172 Label *getOrCreateLocalLabel(SizeT Number); | 172 Label *getOrCreateLocalLabel(SizeT Number); |
| 173 void bindLocalLabel(SizeT Number); | 173 void bindLocalLabel(SizeT Number); |
| 174 void bindRelocOffset(RelocOffset *Offset); |
| 174 | 175 |
| 175 bool fixupIsPCRel(FixupKind Kind) const override { | 176 bool fixupIsPCRel(FixupKind Kind) const override { |
| 176 // Currently assuming this is the only PC-rel relocation type used. | 177 // Currently assuming this is the only PC-rel relocation type used. |
| 177 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 | 178 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 |
| 178 return Kind == Traits::FK_PcRel; | 179 return Kind == Traits::FK_PcRel; |
| 179 } | 180 } |
| 180 | 181 |
| 181 // Operations to emit GPR instructions (and dispatch on operand type). | 182 // Operations to emit GPR instructions (and dispatch on operand type). |
| 182 using TypedEmitGPR = void (AssemblerX86Base::*)(Type, GPRRegister); | 183 using TypedEmitGPR = void (AssemblerX86Base::*)(Type, GPRRegister); |
| 183 using TypedEmitAddr = void (AssemblerX86Base::*)(Type, const Address &); | 184 using TypedEmitAddr = void (AssemblerX86Base::*)(Type, const Address &); |
| (...skipping 732 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 916 emitUint8(0x66); | 917 emitUint8(0x66); |
| 917 } | 918 } |
| 918 | 919 |
| 919 } // end of namespace X86NAMESPACE | 920 } // end of namespace X86NAMESPACE |
| 920 | 921 |
| 921 } // end of namespace Ice | 922 } // end of namespace Ice |
| 922 | 923 |
| 923 #include "IceAssemblerX86BaseImpl.h" | 924 #include "IceAssemblerX86BaseImpl.h" |
| 924 | 925 |
| 925 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H | 926 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H |
| OLD | NEW |