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 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 } | 253 } |
254 void _mulss(Variable *Dest, Operand *Src0) { | 254 void _mulss(Variable *Dest, Operand *Src0) { |
255 Context.insert(InstX8632Mulss::create(Func, Dest, Src0)); | 255 Context.insert(InstX8632Mulss::create(Func, Dest, Src0)); |
256 } | 256 } |
257 void _neg(Variable *SrcDest) { | 257 void _neg(Variable *SrcDest) { |
258 Context.insert(InstX8632Neg::create(Func, SrcDest)); | 258 Context.insert(InstX8632Neg::create(Func, SrcDest)); |
259 } | 259 } |
260 void _or(Variable *Dest, Operand *Src0) { | 260 void _or(Variable *Dest, Operand *Src0) { |
261 Context.insert(InstX8632Or::create(Func, Dest, Src0)); | 261 Context.insert(InstX8632Or::create(Func, Dest, Src0)); |
262 } | 262 } |
| 263 void _padd(Variable *Dest, Operand *Src0) { |
| 264 Context.insert(InstX8632Padd::create(Func, Dest, Src0)); |
| 265 } |
| 266 void _pand(Variable *Dest, Operand *Src0) { |
| 267 Context.insert(InstX8632Pand::create(Func, Dest, Src0)); |
| 268 } |
| 269 void _pmullw(Variable *Dest, Operand *Src0) { |
| 270 Context.insert(InstX8632Pmullw::create(Func, Dest, Src0)); |
| 271 } |
| 272 void _pmuludq(Variable *Dest, Operand *Src0) { |
| 273 Context.insert(InstX8632Pmuludq::create(Func, Dest, Src0)); |
| 274 } |
263 void _pop(Variable *Dest) { | 275 void _pop(Variable *Dest) { |
264 Context.insert(InstX8632Pop::create(Func, Dest)); | 276 Context.insert(InstX8632Pop::create(Func, Dest)); |
265 } | 277 } |
| 278 void _por(Variable *Dest, Operand *Src0) { |
| 279 Context.insert(InstX8632Por::create(Func, Dest, Src0)); |
| 280 } |
| 281 void _pshufd(Variable *Dest, Operand *Src0, Operand *Src1) { |
| 282 Context.insert(InstX8632Pshufd::create(Func, Dest, Src0, Src1)); |
| 283 } |
| 284 void _psub(Variable *Dest, Operand *Src0) { |
| 285 Context.insert(InstX8632Psub::create(Func, Dest, Src0)); |
| 286 } |
266 void _push(Operand *Src0, bool SuppressStackAdjustment = false) { | 287 void _push(Operand *Src0, bool SuppressStackAdjustment = false) { |
267 Context.insert(InstX8632Push::create(Func, Src0, SuppressStackAdjustment)); | 288 Context.insert(InstX8632Push::create(Func, Src0, SuppressStackAdjustment)); |
268 } | 289 } |
269 void _pxor(Variable *Dest, Operand *Src0) { | 290 void _pxor(Variable *Dest, Operand *Src0) { |
270 Context.insert(InstX8632Pxor::create(Func, Dest, Src0)); | 291 Context.insert(InstX8632Pxor::create(Func, Dest, Src0)); |
271 } | 292 } |
272 void _ret(Variable *Src0 = NULL) { | 293 void _ret(Variable *Src0 = NULL) { |
273 Context.insert(InstX8632Ret::create(Func, Src0)); | 294 Context.insert(InstX8632Ret::create(Func, Src0)); |
274 } | 295 } |
275 void _sar(Variable *Dest, Operand *Src0) { | 296 void _sar(Variable *Dest, Operand *Src0) { |
276 Context.insert(InstX8632Sar::create(Func, Dest, Src0)); | 297 Context.insert(InstX8632Sar::create(Func, Dest, Src0)); |
277 } | 298 } |
278 void _sbb(Variable *Dest, Operand *Src0) { | 299 void _sbb(Variable *Dest, Operand *Src0) { |
279 Context.insert(InstX8632Sbb::create(Func, Dest, Src0)); | 300 Context.insert(InstX8632Sbb::create(Func, Dest, Src0)); |
280 } | 301 } |
281 void _shl(Variable *Dest, Operand *Src0) { | 302 void _shl(Variable *Dest, Operand *Src0) { |
282 Context.insert(InstX8632Shl::create(Func, Dest, Src0)); | 303 Context.insert(InstX8632Shl::create(Func, Dest, Src0)); |
283 } | 304 } |
284 void _shld(Variable *Dest, Variable *Src0, Variable *Src1) { | 305 void _shld(Variable *Dest, Variable *Src0, Variable *Src1) { |
285 Context.insert(InstX8632Shld::create(Func, Dest, Src0, Src1)); | 306 Context.insert(InstX8632Shld::create(Func, Dest, Src0, Src1)); |
286 } | 307 } |
287 void _shr(Variable *Dest, Operand *Src0) { | 308 void _shr(Variable *Dest, Operand *Src0) { |
288 Context.insert(InstX8632Shr::create(Func, Dest, Src0)); | 309 Context.insert(InstX8632Shr::create(Func, Dest, Src0)); |
289 } | 310 } |
290 void _shrd(Variable *Dest, Variable *Src0, Variable *Src1) { | 311 void _shrd(Variable *Dest, Variable *Src0, Variable *Src1) { |
291 Context.insert(InstX8632Shrd::create(Func, Dest, Src0, Src1)); | 312 Context.insert(InstX8632Shrd::create(Func, Dest, Src0, Src1)); |
292 } | 313 } |
| 314 void _shufps(Variable *Dest, Operand *Src0, Operand *Src1) { |
| 315 Context.insert(InstX8632Shufps::create(Func, Dest, Src0, Src1)); |
| 316 } |
293 void _sqrtss(Variable *Dest, Operand *Src0) { | 317 void _sqrtss(Variable *Dest, Operand *Src0) { |
294 Context.insert(InstX8632Sqrtss::create(Func, Dest, Src0)); | 318 Context.insert(InstX8632Sqrtss::create(Func, Dest, Src0)); |
295 } | 319 } |
296 void _store(Operand *Value, OperandX8632 *Mem) { | 320 void _store(Operand *Value, OperandX8632 *Mem) { |
297 Context.insert(InstX8632Store::create(Func, Value, Mem)); | 321 Context.insert(InstX8632Store::create(Func, Value, Mem)); |
298 } | 322 } |
299 void _storeq(Operand *Value, OperandX8632 *Mem) { | 323 void _storeq(Operand *Value, OperandX8632 *Mem) { |
300 Context.insert(InstX8632StoreQ::create(Func, Value, Mem)); | 324 Context.insert(InstX8632StoreQ::create(Func, Value, Mem)); |
301 } | 325 } |
302 void _sub(Variable *Dest, Operand *Src0) { | 326 void _sub(Variable *Dest, Operand *Src0) { |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
369 virtual ~TargetGlobalInitX8632() {} | 393 virtual ~TargetGlobalInitX8632() {} |
370 }; | 394 }; |
371 | 395 |
372 template <> void ConstantInteger::emit(GlobalContext *Ctx) const; | 396 template <> void ConstantInteger::emit(GlobalContext *Ctx) const; |
373 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; | 397 template <> void ConstantFloat::emit(GlobalContext *Ctx) const; |
374 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; | 398 template <> void ConstantDouble::emit(GlobalContext *Ctx) const; |
375 | 399 |
376 } // end of namespace Ice | 400 } // end of namespace Ice |
377 | 401 |
378 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H | 402 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H |
OLD | NEW |