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 542 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
553 _set_dest_nonkillable(); | 553 _set_dest_nonkillable(); |
554 Context.insert(InstFakeUse::create(Func, Src)); | 554 Context.insert(InstFakeUse::create(Func, Src)); |
555 } | 555 } |
556 void _xor(Variable *Dest, Operand *Src0) { | 556 void _xor(Variable *Dest, Operand *Src0) { |
557 Context.insert(InstX8632Xor::create(Func, Dest, Src0)); | 557 Context.insert(InstX8632Xor::create(Func, Dest, Src0)); |
558 } | 558 } |
559 void _set_dest_nonkillable() { | 559 void _set_dest_nonkillable() { |
560 Context.getLastInserted()->setDestNonKillable(); | 560 Context.getLastInserted()->setDestNonKillable(); |
561 } | 561 } |
562 | 562 |
| 563 bool optimizeScalarMul(Variable *Dest, Operand *Src0, int32_t Src1); |
| 564 |
563 const X86InstructionSet InstructionSet; | 565 const X86InstructionSet InstructionSet; |
564 bool IsEbpBasedFrame; | 566 bool IsEbpBasedFrame; |
565 bool NeedsStackAlignment; | 567 bool NeedsStackAlignment; |
566 size_t SpillAreaSizeBytes; | 568 size_t SpillAreaSizeBytes; |
567 llvm::SmallBitVector TypeToRegisterSet[IceType_NUM]; | 569 llvm::SmallBitVector TypeToRegisterSet[IceType_NUM]; |
568 llvm::SmallBitVector ScratchRegs; | 570 llvm::SmallBitVector ScratchRegs; |
569 llvm::SmallBitVector RegsUsed; | 571 llvm::SmallBitVector RegsUsed; |
570 VarList PhysicalRegisters[IceType_NUM]; | 572 VarList PhysicalRegisters[IceType_NUM]; |
571 static IceString RegNames[]; | 573 static IceString RegNames[]; |
572 | 574 |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
610 protected: | 612 protected: |
611 explicit TargetHeaderX8632(GlobalContext *Ctx); | 613 explicit TargetHeaderX8632(GlobalContext *Ctx); |
612 | 614 |
613 private: | 615 private: |
614 ~TargetHeaderX8632() = default; | 616 ~TargetHeaderX8632() = default; |
615 }; | 617 }; |
616 | 618 |
617 } // end of namespace Ice | 619 } // end of namespace Ice |
618 | 620 |
619 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H | 621 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H |
OLD | NEW |