OLD | NEW |
1 //===- subzero/src/IceTargetLoweringX8632.h - x86-32 lowering ---*- C++ -*-===// | 1 //===- subzero/src/IceTargetLoweringX8632.h - x86-32 lowering ---*- 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 // This file declares the TargetLoweringX8632 class, which | 10 // This file declares the TargetLoweringX8632 class, which |
(...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
490 class TargetDataX8632 : public TargetDataLowering { | 490 class TargetDataX8632 : public TargetDataLowering { |
491 TargetDataX8632() = delete; | 491 TargetDataX8632() = delete; |
492 TargetDataX8632(const TargetDataX8632 &) = delete; | 492 TargetDataX8632(const TargetDataX8632 &) = delete; |
493 TargetDataX8632 &operator=(const TargetDataX8632 &) = delete; | 493 TargetDataX8632 &operator=(const TargetDataX8632 &) = delete; |
494 | 494 |
495 public: | 495 public: |
496 static TargetDataLowering *create(GlobalContext *Ctx) { | 496 static TargetDataLowering *create(GlobalContext *Ctx) { |
497 return new TargetDataX8632(Ctx); | 497 return new TargetDataX8632(Ctx); |
498 } | 498 } |
499 | 499 |
500 void lowerGlobal(const VariableDeclaration &Var) const final; | 500 void lowerGlobals(std::unique_ptr<VariableDeclarationList> Vars) const final; |
501 void lowerGlobalsELF(const VariableDeclarationList &Vars) const final; | 501 void lowerConstants() const final; |
502 void lowerConstants(GlobalContext *Ctx) const final; | |
503 | 502 |
504 protected: | 503 protected: |
505 TargetDataX8632(GlobalContext *Ctx); | 504 TargetDataX8632(GlobalContext *Ctx); |
506 | 505 |
507 private: | 506 private: |
| 507 void lowerGlobal(const VariableDeclaration &Var) const; |
508 ~TargetDataX8632() override {} | 508 ~TargetDataX8632() override {} |
509 template <typename T> static void emitConstantPool(GlobalContext *Ctx); | 509 template <typename T> static void emitConstantPool(GlobalContext *Ctx); |
510 }; | 510 }; |
511 | 511 |
512 template <> void ConstantInteger32::emit(GlobalContext *Ctx) const; | 512 template <> void ConstantInteger32::emit(GlobalContext *Ctx) const; |
513 template <> void ConstantInteger64::emit(GlobalContext *Ctx) const; | 513 template <> void ConstantInteger64::emit(GlobalContext *Ctx) const; |
514 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; | 514 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; |
515 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; | 515 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; |
516 | 516 |
517 } // end of namespace Ice | 517 } // end of namespace Ice |
518 | 518 |
519 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H | 519 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H |
OLD | NEW |