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 578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
589 X86InstructionSet InstructionSet; | 589 X86InstructionSet InstructionSet; |
590 bool IsEbpBasedFrame; | 590 bool IsEbpBasedFrame; |
591 bool NeedsStackAlignment; | 591 bool NeedsStackAlignment; |
592 size_t SpillAreaSizeBytes; | 592 size_t SpillAreaSizeBytes; |
593 llvm::SmallBitVector TypeToRegisterSet[IceType_NUM]; | 593 llvm::SmallBitVector TypeToRegisterSet[IceType_NUM]; |
594 llvm::SmallBitVector ScratchRegs; | 594 llvm::SmallBitVector ScratchRegs; |
595 llvm::SmallBitVector RegsUsed; | 595 llvm::SmallBitVector RegsUsed; |
596 VarList PhysicalRegisters[IceType_NUM]; | 596 VarList PhysicalRegisters[IceType_NUM]; |
597 static IceString RegNames[]; | 597 static IceString RegNames[]; |
598 | 598 |
| 599 // Randomize a given immediate operand |
| 600 Operand *randomizeOrPoolImmediate(Constant *Immediate, |
| 601 int32_t RegNum = Variable::NoRegister); |
| 602 OperandX8632Mem * |
| 603 randomizeOrPoolImmediate(OperandX8632Mem *MemOperand, |
| 604 int32_t RegNum = Variable::NoRegister); |
| 605 bool RandomizationPoolingPaused; |
| 606 |
599 private: | 607 private: |
600 ~TargetX8632() override {} | 608 ~TargetX8632() override {} |
601 BoolFolding FoldingInfo; | 609 BoolFolding FoldingInfo; |
602 }; | 610 }; |
603 | 611 |
604 class TargetDataX8632 final : public TargetDataLowering { | 612 class TargetDataX8632 final : public TargetDataLowering { |
605 TargetDataX8632() = delete; | 613 TargetDataX8632() = delete; |
606 TargetDataX8632(const TargetDataX8632 &) = delete; | 614 TargetDataX8632(const TargetDataX8632 &) = delete; |
607 TargetDataX8632 &operator=(const TargetDataX8632 &) = delete; | 615 TargetDataX8632 &operator=(const TargetDataX8632 &) = delete; |
608 | 616 |
(...skipping 27 matching lines...) Expand all Loading... |
636 protected: | 644 protected: |
637 explicit TargetHeaderX8632(GlobalContext *Ctx); | 645 explicit TargetHeaderX8632(GlobalContext *Ctx); |
638 | 646 |
639 private: | 647 private: |
640 ~TargetHeaderX8632() = default; | 648 ~TargetHeaderX8632() = default; |
641 }; | 649 }; |
642 | 650 |
643 } // end of namespace Ice | 651 } // end of namespace Ice |
644 | 652 |
645 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H | 653 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H |
OLD | NEW |