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 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 llvm::SmallVector<intptr_t, 20> UnresolvedNearPositions; | 108 llvm::SmallVector<intptr_t, 20> UnresolvedNearPositions; |
109 | 109 |
110 template <class> friend class AssemblerX86Base; | 110 template <class> friend class AssemblerX86Base; |
111 }; | 111 }; |
112 | 112 |
113 template <class Machine> class AssemblerX86Base : public Assembler { | 113 template <class Machine> class AssemblerX86Base : public Assembler { |
114 AssemblerX86Base(const AssemblerX86Base &) = delete; | 114 AssemblerX86Base(const AssemblerX86Base &) = delete; |
115 AssemblerX86Base &operator=(const AssemblerX86Base &) = delete; | 115 AssemblerX86Base &operator=(const AssemblerX86Base &) = delete; |
116 | 116 |
117 protected: | 117 protected: |
118 AssemblerX86Base(AssemblerKind Kind, bool use_far_branches) | 118 AssemblerX86Base(AssemblerKind Kind, GlobalContext *Ctx, |
119 : Assembler(Kind) { | 119 bool use_far_branches) |
| 120 : Assembler(Kind, Ctx) { |
120 // This mode is only needed and implemented for MIPS and ARM. | 121 // This mode is only needed and implemented for MIPS and ARM. |
121 assert(!use_far_branches); | 122 assert(!use_far_branches); |
122 (void)use_far_branches; | 123 (void)use_far_branches; |
123 } | 124 } |
124 | 125 |
125 public: | 126 public: |
126 using Traits = MachineTraits<Machine>; | 127 using Traits = MachineTraits<Machine>; |
127 | 128 |
128 ~AssemblerX86Base() override; | 129 ~AssemblerX86Base() override; |
129 | 130 |
(...skipping 941 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1071 emitUint8(0x66); | 1072 emitUint8(0x66); |
1072 } | 1073 } |
1073 | 1074 |
1074 } // end of namespace X86Internal | 1075 } // end of namespace X86Internal |
1075 | 1076 |
1076 } // end of namespace Ice | 1077 } // end of namespace Ice |
1077 | 1078 |
1078 #include "IceAssemblerX86BaseImpl.h" | 1079 #include "IceAssemblerX86BaseImpl.h" |
1079 | 1080 |
1080 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H | 1081 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H |
OLD | NEW |