Lines Matching refs:Dest
212 void lowerInt64Arithmetic(InstArithmetic::OpKind Op, Variable *Dest,
279 void lowerInt64AtomicRMW(Variable *Dest, uint32_t Operation, Operand *Ptr,
281 void lowerAtomicRMW(Variable *Dest, uint32_t Operation, Operand *Ptr,
326 void lowerIDivRem(Variable *Dest, Variable *T, Variable *Src0R, Operand *Src1,
329 void lowerCLZ(Variable *Dest, Variable *ValLo, Variable *ValHi);
334 void _add(Variable *Dest, Variable *Src0, Operand *Src1,
336 Context.insert<InstARM32Add>(Dest, Src0, Src1, Pred);
338 void _adds(Variable *Dest, Variable *Src0, Operand *Src1,
341 Context.insert<InstARM32Add>(Dest, Src0, Src1, Pred, SetFlags);
343 Context.insert<InstFakeUse>(Dest);
346 void _adc(Variable *Dest, Variable *Src0, Operand *Src1,
348 Context.insert<InstARM32Adc>(Dest, Src0, Src1, Pred);
350 void _and(Variable *Dest, Variable *Src0, Operand *Src1,
352 Context.insert<InstARM32And>(Dest, Src0, Src1, Pred);
354 void _asr(Variable *Dest, Variable *Src0, Operand *Src1,
356 Context.insert<InstARM32Asr>(Dest, Src0, Src1, Pred);
358 void _bic(Variable *Dest, Variable *Src0, Operand *Src1,
360 Context.insert<InstARM32Bic>(Dest, Src0, Src1, Pred);
381 void _clz(Variable *Dest, Variable *Src0,
383 Context.insert<InstARM32Clz>(Dest, Src0, Pred);
386 void _eor(Variable *Dest, Variable *Src0, Operand *Src1,
388 Context.insert<InstARM32Eor>(Dest, Src0, Src1, Pred);
394 void _ldr(Variable *Dest, OperandARM32Mem *Addr,
396 Context.insert<InstARM32Ldr>(Dest, Addr, Pred);
398 InstARM32Ldrex *_ldrex(Variable *Dest, OperandARM32Mem *Addr,
400 auto *Ldrex = Context.insert<InstARM32Ldrex>(Dest, Addr, Pred);
401 if (auto *Dest64 = llvm::dyn_cast<Variable64On32>(Dest)) {
402 Context.insert<InstFakeDef>(Dest64->getLo(), Dest);
403 Context.insert<InstFakeDef>(Dest64->getHi(), Dest);
407 void _lsl(Variable *Dest, Variable *Src0, Operand *Src1,
409 Context.insert<InstARM32Lsl>(Dest, Src0, Src1, Pred);
411 void _lsls(Variable *Dest, Variable *Src0, Operand *Src1,
414 Context.insert<InstARM32Lsl>(Dest, Src0, Src1, Pred, SetFlags);
416 Context.insert<InstFakeUse>(Dest);
419 void _lsr(Variable *Dest, Variable *Src0, Operand *Src1,
421 Context.insert<InstARM32Lsr>(Dest, Src0, Src1, Pred);
423 void _mla(Variable *Dest, Variable *Src0, Variable *Src1, Variable *Acc,
425 Context.insert<InstARM32Mla>(Dest, Src0, Src1, Acc, Pred);
427 void _mls(Variable *Dest, Variable *Src0, Variable *Src1, Variable *Acc,
429 Context.insert<InstARM32Mls>(Dest, Src0, Src1, Acc, Pred);
435 void _mov(Variable *Dest, Operand *Src0,
441 assert(Dest != nullptr);
443 auto *Instr = Context.insert<InstARM32Mov>(Dest, Src0, Pred);
448 assert(llvm::isa<Variable64On32>(Dest));
453 void _mov_redefined(Variable *Dest, Operand *Src0,
455 auto *Instr = Context.insert<InstARM32Mov>(Dest, Src0, Pred);
460 assert(llvm::isa<Variable64On32>(Dest));
469 void _extractelement(Variable *Dest, Variable *Src0, uint32_t Index,
471 Context.insert<InstARM32Extract>(Dest, Src0, Index, Pred);
476 void _insertelement(Variable *Dest, Variable *Src0, uint32_t Index,
478 Context.insert<InstARM32Insert>(Dest, Src0, Index, Pred);
562 SafeBoolChain lowerInt1(Variable *Dest, Operand *Boolean);
572 void lowerInt1ForSelect(Variable *Dest, Operand *Boolean, Operand *TrueValue,
710 void _movt(Variable *Dest, Operand *Src0,
712 Context.insert<InstARM32Movt>(Dest, Src0, Pred);
714 void _movw(Variable *Dest, Operand *Src0,
716 Context.insert<InstARM32Movw>(Dest, Src0, Pred);
718 void _mul(Variable *Dest, Variable *Src0, Variable *Src1,
720 Context.insert<InstARM32Mul>(Dest, Src0, Src1, Pred);
722 void _mvn(Variable *Dest, Operand *Src0,
724 Context.insert<InstARM32Mvn>(Dest, Src0, Pred);
726 void _orr(Variable *Dest, Variable *Src0, Operand *Src1,
728 Context.insert<InstARM32Orr>(Dest, Src0, Src1, Pred);
730 void _orrs(Variable *Dest, Variable *Src0, Operand *Src1,
733 Context.insert<InstARM32Orr>(Dest, Src0, Src1, Pred, SetFlags);
735 Context.insert<InstFakeUse>(Dest);
742 for (Variable *Dest : Dests) in _pop()
743 Context.insert<InstFakeDef>(Dest); in _pop()
745 void _rbit(Variable *Dest, Variable *Src0,
747 Context.insert<InstARM32Rbit>(Dest, Src0, Pred);
749 void _rev(Variable *Dest, Variable *Src0,
751 Context.insert<InstARM32Rev>(Dest, Src0, Pred);
756 void _rscs(Variable *Dest, Variable *Src0, Operand *Src1,
759 Context.insert<InstARM32Rsc>(Dest, Src0, Src1, Pred, SetFlags);
761 Context.insert<InstFakeUse>(Dest);
764 void _rsc(Variable *Dest, Variable *Src0, Operand *Src1,
766 Context.insert<InstARM32Rsc>(Dest, Src0, Src1, Pred);
768 void _rsbs(Variable *Dest, Variable *Src0, Operand *Src1,
771 Context.insert<InstARM32Rsb>(Dest, Src0, Src1, Pred, SetFlags);
773 Context.insert<InstFakeUse>(Dest);
776 void _rsb(Variable *Dest, Variable *Src0, Operand *Src1,
778 Context.insert<InstARM32Rsb>(Dest, Src0, Src1, Pred);
780 void _sbc(Variable *Dest, Variable *Src0, Operand *Src1,
782 Context.insert<InstARM32Sbc>(Dest, Src0, Src1, Pred);
784 void _sbcs(Variable *Dest, Variable *Src0, Operand *Src1,
787 Context.insert<InstARM32Sbc>(Dest, Src0, Src1, Pred, SetFlags);
789 Context.insert<InstFakeUse>(Dest);
792 void _sdiv(Variable *Dest, Variable *Src0, Variable *Src1,
794 Context.insert<InstARM32Sdiv>(Dest, Src0, Src1, Pred);
802 InstARM32Strex *_strex(Variable *Dest, Variable *Value, OperandARM32Mem *Addr,
808 return Context.insert<InstARM32Strex>(Dest, Value, Addr, Pred);
810 void _sub(Variable *Dest, Variable *Src0, Operand *Src1,
812 Context.insert<InstARM32Sub>(Dest, Src0, Src1, Pred);
814 void _subs(Variable *Dest, Variable *Src0, Operand *Src1,
817 Context.insert<InstARM32Sub>(Dest, Src0, Src1, Pred, SetFlags);
819 Context.insert<InstFakeUse>(Dest);
822 void _sxt(Variable *Dest, Variable *Src0,
824 Context.insert<InstARM32Sxt>(Dest, Src0, Pred);
831 void _udiv(Variable *Dest, Variable *Src0, Variable *Src1,
833 Context.insert<InstARM32Udiv>(Dest, Src0, Src1, Pred);
847 void _uxt(Variable *Dest, Variable *Src0,
849 Context.insert<InstARM32Uxt>(Dest, Src0, Pred);
851 void _vabs(Variable *Dest, Variable *Src,
853 Context.insert<InstARM32Vabs>(Dest, Src, Pred);
855 void _vadd(Variable *Dest, Variable *Src0, Variable *Src1) { in _vadd() argument
856 Context.insert<InstARM32Vadd>(Dest, Src0, Src1); in _vadd()
858 void _vand(Variable *Dest, Variable *Src0, Variable *Src1) { in _vand() argument
859 Context.insert<InstARM32Vand>(Dest, Src0, Src1); in _vand()
861 InstARM32Vbsl *_vbsl(Variable *Dest, Variable *Src0, Variable *Src1) { in _vbsl() argument
862 return Context.insert<InstARM32Vbsl>(Dest, Src0, Src1); in _vbsl()
864 void _vceq(Variable *Dest, Variable *Src0, Variable *Src1) { in _vceq() argument
865 Context.insert<InstARM32Vceq>(Dest, Src0, Src1); in _vceq()
867 InstARM32Vcge *_vcge(Variable *Dest, Variable *Src0, Variable *Src1) { in _vcge() argument
868 return Context.insert<InstARM32Vcge>(Dest, Src0, Src1); in _vcge()
870 InstARM32Vcgt *_vcgt(Variable *Dest, Variable *Src0, Variable *Src1) { in _vcgt() argument
871 return Context.insert<InstARM32Vcgt>(Dest, Src0, Src1); in _vcgt()
873 void _vcvt(Variable *Dest, Variable *Src, InstARM32Vcvt::VcvtVariant Variant,
875 Context.insert<InstARM32Vcvt>(Dest, Src, Variant, Pred);
877 void _vdiv(Variable *Dest, Variable *Src0, Variable *Src1) { in _vdiv() argument
878 Context.insert<InstARM32Vdiv>(Dest, Src0, Src1); in _vdiv()
888 void _veor(Variable *Dest, Variable *Src0, Variable *Src1) { in _veor() argument
889 Context.insert<InstARM32Veor>(Dest, Src0, Src1); in _veor()
894 void _vmla(Variable *Dest, Variable *Src0, Variable *Src1) { in _vmla() argument
895 Context.insert<InstARM32Vmla>(Dest, Src0, Src1); in _vmla()
897 void _vmls(Variable *Dest, Variable *Src0, Variable *Src1) { in _vmls() argument
898 Context.insert<InstARM32Vmls>(Dest, Src0, Src1); in _vmls()
900 void _vmul(Variable *Dest, Variable *Src0, Variable *Src1) { in _vmul() argument
901 Context.insert<InstARM32Vmul>(Dest, Src0, Src1); in _vmul()
903 void _vmvn(Variable *Dest, Variable *Src0) { in _vmvn() argument
904 Context.insert<InstARM32Vmvn>(Dest, Src0, CondARM32::AL); in _vmvn()
906 void _vneg(Variable *Dest, Variable *Src0) { in _vneg() argument
907 Context.insert<InstARM32Vneg>(Dest, Src0, CondARM32::AL) in _vneg()
910 void _vorr(Variable *Dest, Variable *Src0, Variable *Src1) { in _vorr() argument
911 Context.insert<InstARM32Vorr>(Dest, Src0, Src1); in _vorr()
913 InstARM32Vshl *_vshl(Variable *Dest, Variable *Src0, Variable *Src1) { in _vshl() argument
914 return Context.insert<InstARM32Vshl>(Dest, Src0, Src1); in _vshl()
916 void _vshl(Variable *Dest, Variable *Src0, ConstantInteger32 *Src1) { in _vshl() argument
917 Context.insert<InstARM32Vshl>(Dest, Src0, Src1) in _vshl()
920 InstARM32Vshr *_vshr(Variable *Dest, Variable *Src0, in _vshr() argument
922 return Context.insert<InstARM32Vshr>(Dest, Src0, Src1); in _vshr()
924 void _vsqrt(Variable *Dest, Variable *Src,
926 Context.insert<InstARM32Vsqrt>(Dest, Src, Pred);
928 void _vsub(Variable *Dest, Variable *Src0, Variable *Src1) { in _vsub() argument
929 Context.insert<InstARM32Vsub>(Dest, Src0, Src1); in _vsub()
1047 void ldr(Variable *Dest, OperandARM32Mem *Mem, CondARM32::Cond Pred);
1060 void ldrex(Variable *Dest, OperandARM32Mem *Mem, CondARM32::Cond Pred);
1098 void strex(Variable *Dest, Variable *Src, OperandARM32Mem *Mem,