OLD | NEW |
1 //===- subzero/src/IceTargetLoweringARM32.h - ARM32 lowering ----*- C++ -*-===// | 1 //===- subzero/src/IceTargetLoweringARM32.h - ARM32 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 371 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
382 // Note that the def is not predicated. | 382 // Note that the def is not predicated. |
383 Context.insert(InstFakeDef::create(Func, DestHi, DestLo)); | 383 Context.insert(InstFakeDef::create(Func, DestHi, DestLo)); |
384 } | 384 } |
385 void _uxt(Variable *Dest, Variable *Src0, | 385 void _uxt(Variable *Dest, Variable *Src0, |
386 CondARM32::Cond Pred = CondARM32::AL) { | 386 CondARM32::Cond Pred = CondARM32::AL) { |
387 Context.insert(InstARM32Uxt::create(Func, Dest, Src0, Pred)); | 387 Context.insert(InstARM32Uxt::create(Func, Dest, Src0, Pred)); |
388 } | 388 } |
389 void _vadd(Variable *Dest, Variable *Src0, Variable *Src1) { | 389 void _vadd(Variable *Dest, Variable *Src0, Variable *Src1) { |
390 Context.insert(InstARM32Vadd::create(Func, Dest, Src0, Src1)); | 390 Context.insert(InstARM32Vadd::create(Func, Dest, Src0, Src1)); |
391 } | 391 } |
| 392 void _vcvt(Variable *Dest, Variable *Src, InstARM32Vcvt::VcvtVariant Variant, |
| 393 CondARM32::Cond Pred = CondARM32::AL) { |
| 394 Context.insert(InstARM32Vcvt::create(Func, Dest, Src, Variant, Pred)); |
| 395 } |
392 void _vdiv(Variable *Dest, Variable *Src0, Variable *Src1) { | 396 void _vdiv(Variable *Dest, Variable *Src0, Variable *Src1) { |
393 Context.insert(InstARM32Vdiv::create(Func, Dest, Src0, Src1)); | 397 Context.insert(InstARM32Vdiv::create(Func, Dest, Src0, Src1)); |
394 } | 398 } |
395 void _vldr(Variable *Dest, OperandARM32Mem *Src, | 399 void _vldr(Variable *Dest, OperandARM32Mem *Src, |
396 CondARM32::Cond Pred = CondARM32::AL) { | 400 CondARM32::Cond Pred = CondARM32::AL) { |
397 Context.insert(InstARM32Vldr::create(Func, Dest, Src, Pred)); | 401 Context.insert(InstARM32Vldr::create(Func, Dest, Src, Pred)); |
398 } | 402 } |
399 // There are a whole bunch of vmov variants, to transfer within | 403 // There are a whole bunch of vmov variants, to transfer within |
400 // S/D/Q registers, between core integer registers and S/D, | 404 // S/D/Q registers, between core integer registers and S/D, |
401 // and from small immediates into S/D. | 405 // and from small immediates into S/D. |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
519 | 523 |
520 private: | 524 private: |
521 ~TargetHeaderARM32() = default; | 525 ~TargetHeaderARM32() = default; |
522 | 526 |
523 TargetARM32Features CPUFeatures; | 527 TargetARM32Features CPUFeatures; |
524 }; | 528 }; |
525 | 529 |
526 } // end of namespace Ice | 530 } // end of namespace Ice |
527 | 531 |
528 #endif // SUBZERO_SRC_ICETARGETLOWERINGARM32_H | 532 #endif // SUBZERO_SRC_ICETARGETLOWERINGARM32_H |
OLD | NEW |