| 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 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 InstFakeDef::create(Func, Eax, llvm::dyn_cast<Variable>(DestOrAddr))); | 249 InstFakeDef::create(Func, Eax, llvm::dyn_cast<Variable>(DestOrAddr))); |
| 250 } | 250 } |
| 251 void _cmpxchg8b(OperandX8632Mem *Addr, Variable *Edx, Variable *Eax, | 251 void _cmpxchg8b(OperandX8632Mem *Addr, Variable *Edx, Variable *Eax, |
| 252 Variable *Ecx, Variable *Ebx, bool Locked) { | 252 Variable *Ecx, Variable *Ebx, bool Locked) { |
| 253 Context.insert( | 253 Context.insert( |
| 254 InstX8632Cmpxchg8b::create(Func, Addr, Edx, Eax, Ecx, Ebx, Locked)); | 254 InstX8632Cmpxchg8b::create(Func, Addr, Edx, Eax, Ecx, Ebx, Locked)); |
| 255 // Mark edx, and eax as possibly modified by cmpxchg8b. | 255 // Mark edx, and eax as possibly modified by cmpxchg8b. |
| 256 Context.insert(InstFakeDef::create(Func, Edx)); | 256 Context.insert(InstFakeDef::create(Func, Edx)); |
| 257 Context.insert(InstFakeDef::create(Func, Eax)); | 257 Context.insert(InstFakeDef::create(Func, Eax)); |
| 258 } | 258 } |
| 259 void _cvt(Variable *Dest, Operand *Src0) { | 259 void _cvt(Variable *Dest, Operand *Src0, InstX8632Cvt::CvtVariant Variant) { |
| 260 const bool Trunc = false; | 260 Context.insert(InstX8632Cvt::create(Func, Dest, Src0, Variant)); |
| 261 Context.insert(InstX8632Cvt::create(Func, Dest, Src0, Trunc)); | |
| 262 } | |
| 263 void _cvtt(Variable *Dest, Operand *Src0) { | |
| 264 const bool Trunc = true; | |
| 265 Context.insert(InstX8632Cvt::create(Func, Dest, Src0, Trunc)); | |
| 266 } | 261 } |
| 267 void _div(Variable *Dest, Operand *Src0, Operand *Src1) { | 262 void _div(Variable *Dest, Operand *Src0, Operand *Src1) { |
| 268 Context.insert(InstX8632Div::create(Func, Dest, Src0, Src1)); | 263 Context.insert(InstX8632Div::create(Func, Dest, Src0, Src1)); |
| 269 } | 264 } |
| 270 void _divps(Variable *Dest, Operand *Src0) { | 265 void _divps(Variable *Dest, Operand *Src0) { |
| 271 Context.insert(InstX8632Divps::create(Func, Dest, Src0)); | 266 Context.insert(InstX8632Divps::create(Func, Dest, Src0)); |
| 272 } | 267 } |
| 273 void _divss(Variable *Dest, Operand *Src0) { | 268 void _divss(Variable *Dest, Operand *Src0) { |
| 274 Context.insert(InstX8632Divss::create(Func, Dest, Src0)); | 269 Context.insert(InstX8632Divss::create(Func, Dest, Src0)); |
| 275 } | 270 } |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 500 }; | 495 }; |
| 501 | 496 |
| 502 template <> void ConstantInteger32::emit(GlobalContext *Ctx) const; | 497 template <> void ConstantInteger32::emit(GlobalContext *Ctx) const; |
| 503 template <> void ConstantInteger64::emit(GlobalContext *Ctx) const; | 498 template <> void ConstantInteger64::emit(GlobalContext *Ctx) const; |
| 504 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; | 499 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; |
| 505 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; | 500 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; |
| 506 | 501 |
| 507 } // end of namespace Ice | 502 } // end of namespace Ice |
| 508 | 503 |
| 509 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H | 504 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H |
| OLD | NEW |