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 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 | 155 |
156 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; | 156 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; |
157 void bindCfgNodeLabel(const CfgNode *Node) override; | 157 void bindCfgNodeLabel(const CfgNode *Node) override; |
158 Label *getOrCreateCfgNodeLabel(SizeT Number); | 158 Label *getOrCreateCfgNodeLabel(SizeT Number); |
159 Label *getOrCreateLocalLabel(SizeT Number); | 159 Label *getOrCreateLocalLabel(SizeT Number); |
160 void bindLocalLabel(SizeT Number); | 160 void bindLocalLabel(SizeT Number); |
161 | 161 |
162 bool fixupIsPCRel(FixupKind Kind) const override { | 162 bool fixupIsPCRel(FixupKind Kind) const override { |
163 // Currently assuming this is the only PC-rel relocation type used. | 163 // Currently assuming this is the only PC-rel relocation type used. |
164 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 | 164 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 |
165 return Kind == Traits::PcRelFixup; | 165 return Kind == Traits::FixupKindPcRel; |
166 } | 166 } |
167 | 167 |
168 // Operations to emit GPR instructions (and dispatch on operand type). | 168 // Operations to emit GPR instructions (and dispatch on operand type). |
169 using TypedEmitGPR = void (AssemblerX86Base::*)(Type, | 169 using TypedEmitGPR = void (AssemblerX86Base::*)(Type, |
170 typename Traits::GPRRegister); | 170 typename Traits::GPRRegister); |
171 using TypedEmitAddr = | 171 using TypedEmitAddr = |
172 void (AssemblerX86Base::*)(Type, const typename Traits::Address &); | 172 void (AssemblerX86Base::*)(Type, const typename Traits::Address &); |
173 struct GPREmitterOneOp { | 173 struct GPREmitterOneOp { |
174 TypedEmitGPR Reg; | 174 TypedEmitGPR Reg; |
175 TypedEmitAddr Addr; | 175 TypedEmitAddr Addr; |
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1073 emitUint8(0x66); | 1073 emitUint8(0x66); |
1074 } | 1074 } |
1075 | 1075 |
1076 } // end of namespace X86Internal | 1076 } // end of namespace X86Internal |
1077 | 1077 |
1078 } // end of namespace Ice | 1078 } // end of namespace Ice |
1079 | 1079 |
1080 #include "IceAssemblerX86BaseImpl.h" | 1080 #include "IceAssemblerX86BaseImpl.h" |
1081 | 1081 |
1082 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H | 1082 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H |
OLD | NEW |