| OLD | NEW | 
|---|
| 1 //===- subzero/src/IceTargetLoweringX86Base.h - x86 lowering ----*- C++ -*-===// | 1 //===- subzero/src/IceTargetLoweringX86Base.h - x86 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 /// \file | 10 /// \file | 
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 219 | 219 | 
| 220   using LowerBinOp = void (TargetX86Base::*)(Variable *, Operand *); | 220   using LowerBinOp = void (TargetX86Base::*)(Variable *, Operand *); | 
| 221   void expandAtomicRMWAsCmpxchg(LowerBinOp op_lo, LowerBinOp op_hi, | 221   void expandAtomicRMWAsCmpxchg(LowerBinOp op_lo, LowerBinOp op_hi, | 
| 222                                 Variable *Dest, Operand *Ptr, Operand *Val); | 222                                 Variable *Dest, Operand *Ptr, Operand *Val); | 
| 223 | 223 | 
| 224   void eliminateNextVectorSextInstruction(Variable *SignExtendedResult); | 224   void eliminateNextVectorSextInstruction(Variable *SignExtendedResult); | 
| 225 | 225 | 
| 226   void scalarizeArithmetic(InstArithmetic::OpKind K, Variable *Dest, | 226   void scalarizeArithmetic(InstArithmetic::OpKind K, Variable *Dest, | 
| 227                            Operand *Src0, Operand *Src1); | 227                            Operand *Src0, Operand *Src1); | 
| 228 | 228 | 
|  | 229   /// Emit a fake use of esp to make sure esp stays alive for the entire | 
|  | 230   /// function. Otherwise some esp adjustments get dead-code eliminated. | 
|  | 231   void keepEspLiveAtExit() { | 
|  | 232     Variable *esp = Func->getTarget()->getPhysicalRegister(getStackReg()); | 
|  | 233     Context.insert(InstFakeUse::create(Func, esp)); | 
|  | 234   } | 
|  | 235 | 
| 229   /// Operand legalization helpers. To deal with address mode constraints, the | 236   /// Operand legalization helpers. To deal with address mode constraints, the | 
| 230   /// helpers will create a new Operand and emit instructions that guarantee | 237   /// helpers will create a new Operand and emit instructions that guarantee | 
| 231   /// that the Operand kind is one of those indicated by the LegalMask (a | 238   /// that the Operand kind is one of those indicated by the LegalMask (a | 
| 232   /// bitmask of allowed kinds). If the input Operand is known to already meet | 239   /// bitmask of allowed kinds). If the input Operand is known to already meet | 
| 233   /// the constraints, it may be simply returned as the result, without creating | 240   /// the constraints, it may be simply returned as the result, without creating | 
| 234   /// any new instructions or operands. | 241   /// any new instructions or operands. | 
| 235   enum OperandLegalization { | 242   enum OperandLegalization { | 
| 236     Legal_None = 0, | 243     Legal_None = 0, | 
| 237     Legal_Reg = 1 << 0, // physical register, not stack location | 244     Legal_Reg = 1 << 0, // physical register, not stack location | 
| 238     Legal_Imm = 1 << 1, | 245     Legal_Imm = 1 << 1, | 
| (...skipping 513 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 752   lowerIcmp64(const InstIcmp *Icmp, const InstBr *Br); | 759   lowerIcmp64(const InstIcmp *Icmp, const InstBr *Br); | 
| 753 | 760 | 
| 754   BoolFolding FoldingInfo; | 761   BoolFolding FoldingInfo; | 
| 755 }; | 762 }; | 
| 756 } // end of namespace X86Internal | 763 } // end of namespace X86Internal | 
| 757 } // end of namespace Ice | 764 } // end of namespace Ice | 
| 758 | 765 | 
| 759 #include "IceTargetLoweringX86BaseImpl.h" | 766 #include "IceTargetLoweringX86BaseImpl.h" | 
| 760 | 767 | 
| 761 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H | 768 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H | 
| OLD | NEW | 
|---|