OLD | NEW |
1 //===- subzero/src/IceInstARM32.h - ARM32 machine instructions --*- C++ -*-===// | 1 //===- subzero/src/IceInstARM32.h - ARM32 machine instructions --*- C++ -*-===// |
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 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
354 static bool classof(const Operand *Operand) { | 354 static bool classof(const Operand *Operand) { |
355 return Operand->getKind() == StackVariableKind; | 355 return Operand->getKind() == StackVariableKind; |
356 } | 356 } |
357 void setBaseRegNum(RegNumT RegNum) { BaseRegNum = RegNum; } | 357 void setBaseRegNum(RegNumT RegNum) { BaseRegNum = RegNum; } |
358 RegNumT getBaseRegNum() const override { return BaseRegNum; } | 358 RegNumT getBaseRegNum() const override { return BaseRegNum; } |
359 // Inherit dump() and emit() from Variable. | 359 // Inherit dump() and emit() from Variable. |
360 | 360 |
361 private: | 361 private: |
362 StackVariable(Type Ty, SizeT Index) | 362 StackVariable(Type Ty, SizeT Index) |
363 : Variable(StackVariableKind, Ty, Index) {} | 363 : Variable(StackVariableKind, Ty, Index) {} |
364 RegNumT BaseRegNum = RegNumT::NoRegister; | 364 RegNumT BaseRegNum; |
365 }; | 365 }; |
366 | 366 |
367 /// Base class for ARM instructions. While most ARM instructions can be | 367 /// Base class for ARM instructions. While most ARM instructions can be |
368 /// conditionally executed, a few of them are not predicable (halt, memory | 368 /// conditionally executed, a few of them are not predicable (halt, memory |
369 /// barriers, etc.). | 369 /// barriers, etc.). |
370 class InstARM32 : public InstTarget { | 370 class InstARM32 : public InstTarget { |
371 InstARM32() = delete; | 371 InstARM32() = delete; |
372 InstARM32(const InstARM32 &) = delete; | 372 InstARM32(const InstARM32 &) = delete; |
373 InstARM32 &operator=(const InstARM32 &) = delete; | 373 InstARM32 &operator=(const InstARM32 &) = delete; |
374 | 374 |
(...skipping 1148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1523 // violations and link errors. | 1523 // violations and link errors. |
1524 | 1524 |
1525 template <> void InstARM32Ldr::emit(const Cfg *Func) const; | 1525 template <> void InstARM32Ldr::emit(const Cfg *Func) const; |
1526 template <> void InstARM32Movw::emit(const Cfg *Func) const; | 1526 template <> void InstARM32Movw::emit(const Cfg *Func) const; |
1527 template <> void InstARM32Movt::emit(const Cfg *Func) const; | 1527 template <> void InstARM32Movt::emit(const Cfg *Func) const; |
1528 | 1528 |
1529 } // end of namespace ARM32 | 1529 } // end of namespace ARM32 |
1530 } // end of namespace Ice | 1530 } // end of namespace Ice |
1531 | 1531 |
1532 #endif // SUBZERO_SRC_ICEINSTARM32_H | 1532 #endif // SUBZERO_SRC_ICEINSTARM32_H |
OLD | NEW |