Lines Matching refs:Dest
201 Variable *Dest = Instr->getDest(); in emitTwoAddr() local
202 assert(Dest == Instr->getSrc(0)); in emitTwoAddr()
204 Dest->emit(Func); in emitTwoAddr()
660 const Variable *Dest = getDest(); in emitIAS() local
661 Type DestTy = Dest->getType(); in emitIAS()
669 Asm->vaddqi(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
672 Asm->vaddqf(Dest, getSrc(0), getSrc(1)); in emitIAS()
675 Asm->vadds(Dest, getSrc(0), getSrc(1), CondARM32::AL); in emitIAS()
678 Asm->vaddd(Dest, getSrc(0), getSrc(1), CondARM32::AL); in emitIAS()
686 const Variable *Dest = getDest(); in emitIAS() local
687 switch (Dest->getType()) { in emitIAS()
690 typeStdString(Dest->getType())); in emitIAS()
697 Asm->vandq(Dest, getSrc(0), getSrc(1)); in emitIAS()
704 const Variable *Dest = getDest(); in emitIAS() local
716 Asm->vceqqi(typeElementType(SrcTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
719 Asm->vceqqs(Dest, getSrc(0), getSrc(1)); in emitIAS()
727 const Variable *Dest = getDest(); in emitIAS() local
732 typeStdString(Dest->getType())); in emitIAS()
745 Asm->vcugeqi(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
748 Asm->vcgeqi(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
753 Asm->vcgeqs(Dest, getSrc(0), getSrc(1)); in emitIAS()
760 const Variable *Dest = getDest(); in emitIAS() local
765 typeStdString(Dest->getType())); in emitIAS()
778 Asm->vcugtqi(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
781 Asm->vcgtqi(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
786 Asm->vcgtqs(Dest, getSrc(0), getSrc(1)); in emitIAS()
793 const Variable *Dest = getDest(); in emitIAS() local
794 switch (Dest->getType()) { in emitIAS()
797 typeStdString(Dest->getType())); in emitIAS()
804 Asm->vbslq(Dest, getSrc(0), getSrc(1)); in emitIAS()
811 const Variable *Dest = getDest(); in emitIAS() local
812 switch (Dest->getType()) { in emitIAS()
829 const Variable *Dest = getDest(); in emitIAS() local
830 if (isVectorType(Dest->getType())) { in emitIAS()
831 Asm->veorq(Dest, getSrc(0), getSrc(1)); in emitIAS()
835 assert(Dest->getType() == IceType_f64); in emitIAS()
836 Asm->veord(Dest, getSrc(0), getSrc(1)); in emitIAS()
844 const Variable *Dest = getDest(); in emitIAS() local
845 switch (Dest->getType()) { in emitIAS()
865 const Variable *Dest = getDest(); in emitIAS() local
866 switch (Dest->getType()) { in emitIAS()
884 const Variable *Dest = getDest(); in emitIAS() local
885 switch (Dest->getType()) { in emitIAS()
888 typeStdString(Dest->getType())); in emitIAS()
896 Asm->vmvnq(Dest, getSrc(0)); in emitIAS()
903 const Variable *Dest = getDest(); in emitIAS() local
904 switch (Dest->getType()) { in emitIAS()
907 typeStdString(Dest->getType())); in emitIAS()
915 Asm->vmovlq(Dest, getSrc(0), getSrc(1)); in emitIAS()
922 const Variable *Dest = getDest(); in emitIAS() local
923 switch (Dest->getType()) { in emitIAS()
926 typeStdString(Dest->getType())); in emitIAS()
934 Asm->vmovhq(Dest, getSrc(0), getSrc(1)); in emitIAS()
941 const Variable *Dest = getDest(); in emitIAS() local
942 switch (Dest->getType()) { in emitIAS()
945 typeStdString(Dest->getType())); in emitIAS()
953 Asm->vmovhlq(Dest, getSrc(0), getSrc(1)); in emitIAS()
960 const Variable *Dest = getDest(); in emitIAS() local
961 switch (Dest->getType()) { in emitIAS()
964 typeStdString(Dest->getType())); in emitIAS()
972 Asm->vmovlhq(Dest, getSrc(0), getSrc(1)); in emitIAS()
979 const Variable *Dest = getDest(); in emitIAS() local
980 const Type DestTy = Dest->getType(); in emitIAS()
981 switch (Dest->getType()) { in emitIAS()
984 typeStdString(Dest->getType())); in emitIAS()
993 Asm->vnegqs(ElmtTy, Dest, getSrc(0)); in emitIAS()
1000 const Variable *Dest = getDest(); in emitIAS() local
1001 switch (Dest->getType()) { in emitIAS()
1004 typeStdString(Dest->getType())); in emitIAS()
1011 Asm->vorrq(Dest, getSrc(0), getSrc(1)); in emitIAS()
1018 const Variable *Dest = getDest(); in emitIAS() local
1019 const Type DestTy = Dest->getType(); in emitIAS()
1023 typeStdString(Dest->getType())); in emitIAS()
1038 Asm->vshlqc(ElmtTy, Dest, getSrc(0), Imm6); in emitIAS()
1040 Asm->vshlqu(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
1045 Asm->vshlqc(ElmtTy, Dest, getSrc(0), Imm6); in emitIAS()
1047 Asm->vshlqi(ElmtTy, Dest, getSrc(0), getSrc(1)); in emitIAS()
1057 const Variable *Dest = getDest(); in emitIAS() local
1058 const Type DestTy = Dest->getType(); in emitIAS()
1062 typeStdString(Dest->getType())); in emitIAS()
1076 Asm->vshrqc(ElmtTy, Dest, getSrc(0), Imm6, Sign); in emitIAS()
1087 const Variable *Dest = getDest(); in emitIAS() local
1088 Type DestTy = Dest->getType(); in emitIAS()
1096 Asm->vsubqi(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1099 Asm->vsubqf(Dest, getSrc(0), getSrc(1)); in emitIAS()
1113 const Variable *Dest = getDest(); in emitIAS() local
1114 Type DestTy = Dest->getType(); in emitIAS()
1125 Asm->vqaddqu(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1128 Asm->vqaddqi(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1138 const Variable *Dest = getDest(); in emitIAS() local
1139 Type DestTy = Dest->getType(); in emitIAS()
1150 Asm->vqsubqu(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1153 Asm->vqsubqi(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1166 Type DestTy = Dest->getType(); in emitIAS()
1179 Asm->vqmovn2(typeElementType(DestTy), Dest, Src0, Src1, Unsigned, in emitIAS()
1185 Asm->vqmovn2(typeElementType(DestTy), Dest, Src0, Src1, Unsigned, in emitIAS()
1191 Asm->vqmovn2(typeElementType(DestTy), Dest, Src0, Src1, Unsigned, in emitIAS()
1214 Asm->vmulh(typeElementType(SrcTy), Dest, getSrc(0), getSrc(1), Unsigned); in emitIAS()
1218 Asm->vmulh(typeElementType(SrcTy), Dest, getSrc(0), getSrc(1), Unsigned); in emitIAS()
1236 Asm->vmlap(typeElementType(SrcTy), Dest, Src0, Src1); in emitIAS()
1246 Type DestTy = Dest->getType(); in emitIAS()
1247 Asm->vzip(typeElementType(DestTy), Dest, Src0, Src1); in emitIAS()
1253 const Variable *Dest = getDest(); in emitIAS() local
1254 const Type DestTy = Dest->getType(); in emitIAS()
1263 Asm->vmulqi(typeElementType(DestTy), Dest, getSrc(0), getSrc(1)); in emitIAS()
1266 Asm->vmulqf(Dest, getSrc(0), getSrc(1)); in emitIAS()
1269 Asm->vmuls(Dest, getSrc(0), getSrc(1), CondARM32::AL); in emitIAS()
1272 Asm->vmuld(Dest, getSrc(0), getSrc(1), CondARM32::AL); in emitIAS()
1277 InstARM32Call::InstARM32Call(Cfg *Func, Variable *Dest, Operand *CallTarget) in InstARM32Call() argument
1278 : InstARM32(Func, InstARM32::Call, 1, Dest) { in InstARM32Call()
1493 InstARM32Strex::InstARM32Strex(Cfg *Func, Variable *Dest, Variable *Value, in InstARM32Strex() argument
1495 : InstARM32Pred(Func, InstARM32::Strex, 2, Dest, Predicate) { in InstARM32Strex()
1508 InstARM32Vdup::InstARM32Vdup(Cfg *Func, Variable *Dest, Variable *Src, in InstARM32Vdup() argument
1510 : InstARM32Pred(Func, InstARM32::Vdup, 1, Dest, CondARM32::AL), Idx(Idx) { in InstARM32Vdup()
1527 InstARM32Vcvt::InstARM32Vcvt(Cfg *Func, Variable *Dest, Variable *Src, in InstARM32Vcvt() argument
1529 : InstARM32Pred(Func, InstARM32::Vcvt, 1, Dest, Predicate), in InstARM32Vcvt()
1534 InstARM32Mov::InstARM32Mov(Cfg *Func, Variable *Dest, Operand *Src, in InstARM32Mov() argument
1536 : InstARM32Pred(Func, InstARM32::Mov, 2, Dest, Predicate) { in InstARM32Mov()
1537 auto *Dest64 = llvm::dyn_cast<Variable64On32>(Dest); in InstARM32Mov()
1544 this->Dest = Dest64->getLo(); in InstARM32Mov()
1676 const Operand *Dest = getDest(); in emitIAS() local
1677 const Type DestTy = Dest->getType(); in emitIAS()
1684 Asm->vmovrqi(Dest, Src, adjustDIndex(SrcTy, Index), getPredicate()); in emitIAS()
1689 Asm->vmovsqi(Dest, Src, Index, getPredicate()); in emitIAS()
1711 const Variable *Dest = getDest(); in emit() local
1723 const Register DestReg = getDRegister(Dest, Index); in emit()
1733 const Register DestReg = getSRegister(Dest, Index); in emit()
1742 const Variable *Dest = getDest(); in emitIAS() local
1744 const Type DestTy = insertionType(Dest->getType()); in emitIAS()
1750 Asm->vmovqir(Dest->asType(Func, DestTy, Dest->getRegNum()), in emitIAS()
1757 Asm->vmovqis(Dest, Index, Src, getPredicate()); in emitIAS()
1809 InstARM32Vabs::InstARM32Vabs(Cfg *Func, Variable *Dest, Variable *Src, in InstARM32Vabs() argument
1811 : InstARM32Pred(Func, InstARM32::Vabs, 1, Dest, Predicate) { in InstARM32Vabs()
1926 Variable *Dest = getDest(); in emitSingleDestMultiSource() local
1932 assert(Dest->hasReg()); in emitSingleDestMultiSource()
1938 Dest->emit(Func); in emitSingleDestMultiSource()
1957 bool isMoveBetweenCoreAndVFPRegisters(Variable *Dest, Operand *Src) { in isMoveBetweenCoreAndVFPRegisters() argument
1958 const Type DestTy = Dest->getType(); in isMoveBetweenCoreAndVFPRegisters()
1970 Variable *Dest = getDest(); in emitSingleDestSingleSource() local
1972 if (!Dest->hasReg()) { in emitSingleDestSingleSource()
1981 Type Ty = Dest->getType(); in emitSingleDestSingleSource()
1984 const bool CoreVFPMove = isMoveBetweenCoreAndVFPRegisters(Dest, Src0); in emitSingleDestSingleSource()
2002 Dest->emit(Func); in emitSingleDestSingleSource()
2026 const Variable *Dest = getDest(); in emitIAS() local
2029 if (!Dest->hasReg()) { in emitIAS()
2038 Asm->vmovrrd(Dest, getDestHi(), Src0, Cond); in emitIAS()
2042 Asm->vmovdrr(Dest, Src0, getSrc(1), Cond); in emitIAS()
2046 const Type DestTy = Dest->getType(); in emitIAS()
2063 Asm->mov(Dest, Src0, Cond); in emitIAS()
2066 Asm->vmovrs(Dest, Src0, Cond); in emitIAS()
2072 Asm->mov(Dest, Src0, Cond); in emitIAS()
2077 Asm->vmovdd(Dest, Var, Cond); in emitIAS()
2081 Asm->vmovd(Dest, FpImm, Cond); in emitIAS()
2094 return Asm->vmovsr(Dest, Src0, Cond); in emitIAS()
2097 Asm->vmovss(Dest, Var, Cond); in emitIAS()
2101 Asm->vmovs(Dest, FpImm, Cond); in emitIAS()
2110 Asm->vmovdd(Dest, Var, Cond); in emitIAS()
2114 Asm->vmovd(Dest, FpImm, Cond); in emitIAS()
2132 Asm->vorrq(Dest, Src0, Src0); in emitIAS()
2137 if (Asm->vmovqc(Dest, C)) in emitIAS()
2151 Variable *Dest = getDest(); in dump() local
2153 Dest->dump(Func); in dump()
2326 Variable *Dest = getDest(); in emit() local
2327 Type Ty = Dest->getType(); in emit()
2354 Variable *Dest = getDest(); in emit() local
2355 Type Ty = Dest->getType(); in emit()
2382 Variable *Dest = getDest(); in emit() local
2383 Type Ty = Dest->getType(); in emit()
2407 Variable *Dest = getDest(); in emitIAS() local
2408 const Type DestTy = Dest->getType(); in emitIAS()
2417 Asm->ldr(Dest, getSrc(0), getPredicate(), Func->getTarget()); in emitIAS()
2420 Asm->vldrs(Dest, getSrc(0), getPredicate(), Func->getTarget()); in emitIAS()
2423 Asm->vldrd(Dest, getSrc(0), getPredicate(), Func->getTarget()); in emitIAS()
2432 Asm->vld1qr(getVecElmtBitsize(DestTy), Dest, getSrc(0), Func->getTarget()); in emitIAS()
2440 Variable *Dest = getDest(); in emitIAS() local
2441 Asm->vld1(32, Dest, getSrc(0), Func->getTarget()); in emitIAS()
2447 Variable *Dest = getDest(); in emitIAS() local
2448 Asm->vld1(64, Dest, getSrc(0), Func->getTarget()); in emitIAS()
2457 Variable *Dest = getDest(); in emit() local
2458 Type DestTy = Dest->getType(); in emit()
2470 Variable *Dest = getDest(); in emitIAS() local
2471 assert(isScalarIntegerType(Dest->getType())); in emitIAS()
2473 Asm->ldrex(Dest, getSrc(0), getPredicate(), Func->getTarget()); in emitIAS()
2537 Variable *Dest = getDest(); in emit() local
2540 Dest->emit(Func); in emit()
2606 const Operand *Dest = getDest(); in emitIAS() local
2607 switch (Dest->getType()) { in emitIAS()
2609 Asm->vsqrts(Dest, getSrc(0), getPredicate()); in emitIAS()
2612 Asm->vsqrtd(Dest, getSrc(0), getPredicate()); in emitIAS()
2822 Variable *Dest = getDest(); in emit() local
2827 Dest->emit(Func); in emit()
2837 Asm->strex(Dest, Src0, getSrc(1), getPredicate(), Func->getTarget()); in emitIAS()
2846 Variable *Dest = getDest(); in dump() local
2847 Dest->dump(Func); in dump()
2921 const Operand *Dest = getDest(); in emitIAS() local
2923 Type DestTy = Dest->getType(); in emitIAS()
2924 Asm->vdup(typeElementType(DestTy), Dest, Src, Idx); in emitIAS()
3211 const Variable *Dest = getDest(); in emitIAS() local
3212 switch (Dest->getType()) { in emitIAS()
3215 typeStdString(Dest->getType())); in emitIAS()
3217 Asm->vabss(Dest, getSrc(0), getPredicate()); in emitIAS()
3220 Asm->vabsd(Dest, getSrc(0), getPredicate()); in emitIAS()
3225 Asm->vabsq(Dest, getSrc(0)); in emitIAS()