Home | History | Annotate | Download | only in src

Lines Matching refs:Variable

219     InstX86Base(Cfg *Func, InstKindX86 Kind, SizeT Maxsrcs, Variable *Dest)
263 Variable *Beacon, InstArithmetic::OpKind Op,
273 Variable *getBeacon() const {
274 return llvm::cast<Variable>(this->getSrc(2));
284 InstArithmetic::OpKind Op, Variable *Beacon);
293 static InstX86GetIP *create(Cfg *Func, Variable *Dest) {
304 InstX86GetIP(Cfg *Func, Variable *Dest);
313 /// based on whether a variable's live range spans multiple basic blocks.
482 static InstX86Call *create(Cfg *Func, Variable *Dest, Operand *CallTarget) {
495 InstX86Call(Cfg *Func, Variable *Dest, Operand *CallTarget);
506 static void emitIASGPRShift(const Cfg *Func, Type Ty, const Variable *Var,
514 static void emitIASRegOpTyXMM(const Cfg *Func, Type Ty, const Variable *Var,
518 static void emitIASGPRShiftDouble(const Cfg *Func, const Variable *Dest,
526 const Variable *Dest, Type SrcTy,
533 emitIASThreeOpImmOps(const Cfg *Func, Type DispatchTy, const Variable *Dest,
537 static void emitIASMovlikeXMM(const Cfg *Func, const Variable *Dest,
547 static void emitIASXmmShift(const Cfg *Func, Type Ty, const Variable *Var,
551 /// Emit a two-operand (GPR) instruction, where the dest operand is a Variable
555 const Variable *Dst, const Operand *Src,
579 const Variable *Var = this->getDest();
597 : InstX86Base(Func, K, 1, llvm::dyn_cast<Variable>(SrcDest)) {
636 const Variable *Var = this->getDest();
663 InstX86BaseUnaryopGPR(Cfg *Func, Variable *Dest, Operand *Src)
726 InstX86BaseUnaryopXmm(Cfg *Func, Variable *Dest, Operand *Src)
768 InstX86BaseBinopGPRShift(Cfg *Func, Variable *Dest, Operand *Source)
813 InstX86BaseBinopGPR(Cfg *Func, Variable *Dest, Operand *Source)
924 InstX86BaseBinopXmm(Cfg *Func, Variable *Dest, Operand *Source,
978 InstX86BaseBinopXmmShift(Cfg *Func, Variable *Dest, Operand *Source)
1022 InstX86BaseTernop(Cfg *Func, Variable *Dest, Operand *Source1,
1069 InstX86BaseThreeAddressop(Cfg *Func, Variable *Dest, Operand *Source0,
1091 llvm::dyn_cast<const Variable>(this->getSrc(0))) {
1110 return llvm::isa<Variable>(this->getSrc(0));
1126 InstX86BaseMovlike(Cfg *Func, Variable *Dest, Operand *Source)
1163 static InstX86Bsf *create(Cfg *Func, Variable *Dest, Operand *Src) {
1168 InstX86Bsf(Cfg *Func, Variable *Dest, Operand *Src)
1174 static InstX86Bsr *create(Cfg *Func, Variable *Dest, Operand *Src) {
1179 InstX86Bsr(Cfg *Func, Variable *Dest, Operand *Src)
1185 static InstX86Lea *create(Cfg *Func, Variable *Dest, Operand *Src) {
1192 InstX86Lea(Cfg *Func, Variable *Dest, Operand *Src)
1199 static InstX86Cbwdq *create(Cfg *Func, Variable *Dest, Operand *Src) {
1207 InstX86Cbwdq(Cfg *Func, Variable *Dest, Operand *Src)
1213 static InstX86Movsx *create(Cfg *Func, Variable *Dest, Operand *Src) {
1222 InstX86Movsx(Cfg *Func, Variable *Dest, Operand *Src)
1228 static InstX86Movzx *create(Cfg *Func, Variable *Dest, Operand *Src) {
1243 InstX86Movzx(Cfg *Func, Variable *Dest, Operand *Src)
1246 bool mayBeElided(const Variable *Dest, const Operand *Src) const;
1251 static InstX86Movd *create(Cfg *Func, Variable *Dest, Operand *Src) {
1260 InstX86Movd(Cfg *Func, Variable *Dest, Operand *Src)
1270 static InstX86Movmsk *create(Cfg *Func, Variable *Dest, Operand *Source) {
1282 InstX86Movmsk(Cfg *Func, Variable *Dest, Operand *Source);
1287 static InstX86Sqrt *create(Cfg *Func, Variable *Dest, Operand *Src) {
1294 InstX86Sqrt(Cfg *Func, Variable *Dest, Operand *Src)
1301 static InstX86Mov *create(Cfg *Func, Variable *Dest, Operand *Source) {
1312 InstX86Mov(Cfg *Func, Variable *Dest, Operand *Source)
1320 static InstX86Movp *create(Cfg *Func, Variable *Dest, Operand *Source) {
1329 InstX86Movp(Cfg *Func, Variable *Dest, Operand *Source)
1336 static InstX86Movq *create(Cfg *Func, Variable *Dest, Operand *Source) {
1345 InstX86Movq(Cfg *Func, Variable *Dest, Operand *Source)
1351 static InstX86Add *create(Cfg *Func, Variable *Dest, Operand *Source) {
1356 InstX86Add(Cfg *Func, Variable *Dest, Operand *Source)
1377 static InstX86Addps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1383 InstX86Addps(Cfg *Func, Variable *Dest, Operand *Source)
1391 static InstX86Adc *create(Cfg *Func, Variable *Dest, Operand *Source) {
1396 InstX86Adc(Cfg *Func, Variable *Dest, Operand *Source)
1417 static InstX86Addss *create(Cfg *Func, Variable *Dest, Operand *Source) {
1423 InstX86Addss(Cfg *Func, Variable *Dest, Operand *Source)
1433 static InstX86Padd *create(Cfg *Func, Variable *Dest, Operand *Source) {
1439 InstX86Padd(Cfg *Func, Variable *Dest, Operand *Source)
1449 static InstX86Padds *create(Cfg *Func, Variable *Dest, Operand *Source) {
1455 InstX86Padds(Cfg *Func, Variable *Dest, Operand *Source)
1465 static InstX86Paddus *create(Cfg *Func, Variable *Dest, Operand *Source) {
1471 InstX86Paddus(Cfg *Func, Variable *Dest, Operand *Source)
1479 static InstX86Sub *create(Cfg *Func, Variable *Dest, Operand *Source) {
1484 InstX86Sub(Cfg *Func, Variable *Dest, Operand *Source)
1505 static InstX86Subps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1511 InstX86Subps(Cfg *Func, Variable *Dest, Operand *Source)
1521 static InstX86Subss *create(Cfg *Func, Variable *Dest, Operand *Source) {
1527 InstX86Subss(Cfg *Func, Variable *Dest, Operand *Source)
1535 static InstX86Sbb *create(Cfg *Func, Variable *Dest, Operand *Source) {
1540 InstX86Sbb(Cfg *Func, Variable *Dest, Operand *Source)
1561 static InstX86Psub *create(Cfg *Func, Variable *Dest, Operand *Source) {
1567 InstX86Psub(Cfg *Func, Variable *Dest, Operand *Source)
1577 static InstX86Psubs *create(Cfg *Func, Variable *Dest, Operand *Source) {
1583 InstX86Psubs(Cfg *Func, Variable *Dest, Operand *Source)
1593 static InstX86Psubus *create(Cfg *Func, Variable *Dest, Operand *Source) {
1599 InstX86Psubus(Cfg *Func, Variable *Dest, Operand *Source)
1607 static InstX86And *create(Cfg *Func, Variable *Dest, Operand *Source) {
1612 InstX86And(Cfg *Func, Variable *Dest, Operand *Source)
1620 static InstX86Andnps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1626 InstX86Andnps(Cfg *Func, Variable *Dest, Operand *Source)
1636 static InstX86Andps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1642 InstX86Andps(Cfg *Func, Variable *Dest, Operand *Source)
1664 static InstX86Pand *create(Cfg *Func, Variable *Dest, Operand *Source) {
1670 InstX86Pand(Cfg *Func, Variable *Dest, Operand *Source)
1680 static InstX86Pandn *create(Cfg *Func, Variable *Dest, Operand *Source) {
1686 InstX86Pandn(Cfg *Func, Variable *Dest, Operand *Source)
1696 static InstX86Maxss *create(Cfg *Func, Variable *Dest, Operand *Source) {
1702 InstX86Maxss(Cfg *Func, Variable *Dest, Operand *Source)
1712 static InstX86Minss *create(Cfg *Func, Variable *Dest, Operand *Source) {
1718 InstX86Minss(Cfg *Func, Variable *Dest, Operand *Source)
1728 static InstX86Maxps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1734 InstX86Maxps(Cfg *Func, Variable *Dest, Operand *Source)
1744 static InstX86Minps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1750 InstX86Minps(Cfg *Func, Variable *Dest, Operand *Source)
1758 static InstX86Or *create(Cfg *Func, Variable *Dest, Operand *Source) {
1763 InstX86Or(Cfg *Func, Variable *Dest, Operand *Source)
1771 static InstX86Orps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1777 InstX86Orps(Cfg *Func, Variable *Dest, Operand *Source)
1799 static InstX86Por *create(Cfg *Func, Variable *Dest, Operand *Source) {
1804 InstX86Por(Cfg *Func, Variable *Dest, Operand *Source)
1812 static InstX86Xor *create(Cfg *Func, Variable *Dest, Operand *Source) {
1817 InstX86Xor(Cfg *Func, Variable *Dest, Operand *Source)
1825 static InstX86Xorps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1831 InstX86Xorps(Cfg *Func, Variable *Dest, Operand *Source)
1853 static InstX86Pxor *create(Cfg *Func, Variable *Dest, Operand *Source) {
1859 InstX86Pxor(Cfg *Func, Variable *Dest, Operand *Source)
1867 static InstX86Imul *create(Cfg *Func, Variable *Dest, Operand *Source) {
1876 InstX86Imul(Cfg *Func, Variable *Dest, Operand *Source)
1883 static InstX86ImulImm *create(Cfg *Func, Variable *Dest, Operand *Source0,
1893 InstX86ImulImm(Cfg *Func, Variable *Dest, Operand *Source0,
1903 static InstX86Mulps *create(Cfg *Func, Variable *Dest, Operand *Source) {
1909 InstX86Mulps(Cfg *Func, Variable *Dest, Operand *Source)
1919 static InstX86Mulss *create(Cfg *Func, Variable *Dest, Operand *Source) {
1925 InstX86Mulss(Cfg *Func, Variable *Dest, Operand *Source)
1935 static InstX86Pmull *create(Cfg *Func, Variable *Dest, Operand *Source) {
1951 InstX86Pmull(Cfg *Func, Variable *Dest, Operand *Source)
1961 static InstX86Pmulhw *create(Cfg *Func, Variable *Dest, Operand *Source) {
1969 InstX86Pmulhw(Cfg *Func, Variable *Dest, Operand *Source)
1979 static InstX86Pmulhuw *create(Cfg *Func, Variable *Dest, Operand *Source) {
1987 InstX86Pmulhuw(Cfg *Func, Variable *Dest, Operand *Source)
1997 static InstX86Pmaddwd *create(Cfg *Func, Variable *Dest, Operand *Source) {
2005 InstX86Pmaddwd(Cfg *Func, Variable *Dest, Operand *Source)
2015 static InstX86Pmuludq *create(Cfg *Func, Variable *Dest, Operand *Source) {
2023 InstX86Pmuludq(Cfg *Func, Variable *Dest, Operand *Source)
2033 static InstX86Divps *create(Cfg *Func, Variable *Dest, Operand *Source) {
2039 InstX86Divps(Cfg *Func, Variable *Dest, Operand *Source)
2049 static InstX86Divss *create(Cfg *Func, Variable *Dest, Operand *Source) {
2055 InstX86Divss(Cfg *Func, Variable *Dest, Operand *Source)
2063 static InstX86Rol *create(Cfg *Func, Variable *Dest, Operand *Source) {
2068 InstX86Rol(Cfg *Func, Variable *Dest, Operand *Source)
2074 static InstX86Shl *create(Cfg *Func, Variable *Dest, Operand *Source) {
2079 InstX86Shl(Cfg *Func, Variable *Dest, Operand *Source)
2085 static InstX86Psll *create(Cfg *Func, Variable *Dest, Operand *Source) {
2094 InstX86Psll(Cfg *Func, Variable *Dest, Operand *Source)
2100 static InstX86Psrl *create(Cfg *Func, Variable *Dest, Operand *Source) {
2106 InstX86Psrl(Cfg *Func, Variable *Dest, Operand *Source)
2113 static InstX86Shr *create(Cfg *Func, Variable *Dest, Operand *Source) {
2118 InstX86Shr(Cfg *Func, Variable *Dest, Operand *Source)
2124 static InstX86Sar *create(Cfg *Func, Variable *Dest, Operand *Source) {
2129 InstX86Sar(Cfg *Func, Variable *Dest, Operand *Source)
2135 static InstX86Psra *create(Cfg *Func, Variable *Dest, Operand *Source) {
2144 InstX86Psra(Cfg *Func, Variable *Dest, Operand *Source)
2152 static InstX86Pcmpeq *create(Cfg *Func, Variable *Dest, Operand *Source,
2166 InstX86Pcmpeq(Cfg *Func, Variable *Dest, Operand *Source,
2177 static InstX86Pcmpgt *create(Cfg *Func, Variable *Dest, Operand *Source) {
2186 InstX86Pcmpgt(Cfg *Func, Variable *Dest, Operand *Source)
2202 static InstX86MovssRegs *create(Cfg *Func, Variable *Dest,
2211 InstX86MovssRegs(Cfg *Func, Variable *Dest, Operand *Source)
2219 static InstX86Idiv *create(Cfg *Func, Variable *Dest, Operand *Source1,
2229 InstX86Idiv(Cfg *Func, Variable *Dest, Operand *Source1, Operand *Source2)
2235 static InstX86Div *create(Cfg *Func, Variable *Dest, Operand *Source1,
2245 InstX86Div(Cfg *Func, Variable *Dest, Operand *Source1, Operand *Source2)
2251 static InstX86Insertps *create(Cfg *Func, Variable
2260 InstX86Insertps(Cfg *Func, Variable *Dest, Operand *Source1,
2268 static InstX86Pinsr *create(Cfg *Func, Variable *Dest, Operand *Source1,
2282 InstX86Pinsr(Cfg *Func, Variable *Dest, Operand *Source1, Operand *Source2)
2288 static InstX86Shufps *create(Cfg *Func, Variable *Dest, Operand *Source1,
2297 InstX86Shufps(Cfg *Func, Variable *Dest, Operand *Source1, Operand *Source2)
2304 static InstX86Blendvps *create(Cfg *Func, Variable *Dest, Operand *Source1,
2316 InstX86Blendvps(Cfg *Func, Variable *Dest, Operand *Source1,
2324 static InstX86Pblendvb *create(Cfg *Func, Variable *Dest, Operand *Source1,
2336 InstX86Pblendvb(Cfg *Func, Variable *Dest, Operand *Source1,
2344 static InstX86Pextr *create(Cfg *Func, Variable *Dest, Operand *Source0,
2358 InstX86Pextr(Cfg *Func, Variable *Dest, Operand *Source0, Operand *Source1)
2365 static InstX86Pshufd *create(Cfg *Func, Variable *Dest, Operand *Source0,
2374 InstX86Pshufd(Cfg *Func, Variable *Dest, Operand *Source0, Operand *Source1)
2389 SizeT Maxsrcs, Variable *Dest, bool Locked)
2404 static InstX86Mul *create(Cfg *Func, Variable *Dest, Variable *Source1,
2417 InstX86Mul(Cfg *Func, Variable *Dest, Variable *Source1, Operand *Source2);
2427 static InstX86Shld *create(Cfg *Func, Variable *Dest, Variable *Source1,
2440 InstX86Shld(Cfg *Func, Variable *Dest, Variable *Source1, Operand *Source2);
2450 static InstX86Shrd *create(Cfg *Func, Variable *Dest, Variable *Source1,
2463 InstX86Shrd(Cfg *Func, Variable *Dest, Variable *Source1, Operand *Source2);
2473 static InstX86Cmov *create(Cfg *Func, Variable *Dest, Operand *Source,
2486 InstX86Cmov(Cfg *Func, Variable *Dest, Operand *Source, BrCond Cond);
2498 static InstX86Cmpps *create(Cfg *Func, Variable *Dest, Operand *Source,
2511 InstX86Cmpps(Cfg *Func, Variable *Dest, Operand *Source, CmppsCond Cond);
2527 static InstX86Cmpxchg *create(Cfg *Func, Operand *DestOrAddr, Variable *Eax,
2528 Variable *Desired, bool Locked) {
2540 InstX86Cmpxchg(Cfg *Func, Operand *DestOrAddr, Variable *Eax,
2541 Variable *Desired, bool Locked);
2556 Variable *Edx, Variable *Eax, Variable *Ecx,
2557 Variable *Ebx, bool Locked) {
2569 InstX86Cmpxchg8b(Cfg *Func, X86OperandMem *Dest, Variable *Edx,
2570 Variable *Eax, Variable *Ecx, Variable *Ebx, bool Locked);
2584 static InstX86Cvt *create(Cfg *Func, Variable *Dest, Operand *Source,
2599 InstX86Cvt(Cfg *Func, Variable *Dest, Operand *Source, CvtVariant Variant);
2606 static InstX86Round *create(Cfg *Func, Variable *Dest, Operand *Source,
2616 InstX86Round(Cfg *Func, Variable *Dest, Operand *Source, Operand *Imm)
2750 /// instead of Variable as the destination. It's important for liveness that
2774 /// X86OperandMem operand instead of Variable as the destination. It's
2783 static InstX86StoreP *create(Cfg *Func, Variable *Value,
2796 InstX86StoreP(Cfg *Func, Variable *Value, X86OperandMem *Mem);
2897 static InstX86Fstp *create(Cfg *Func, Variable *Dest) {
2908 InstX86Fstp(Cfg *Func, Variable *Dest);
2917 static InstX86Pop *create(Cfg *Func, Variable *Dest) {
2928 InstX86Pop(Cfg *Func, Variable *Dest);
2967 static InstX86Ret *create(Cfg *Func, Variable *Source = nullptr) {
2978 InstX86Ret(Cfg *Func, Variable *Source);
2988 static InstX86Setcc *create(Cfg *Func, Variable *Dest, BrCond Cond) {
3000 InstX86Setcc(Cfg *Func, Variable *Dest, BrCond Cond);
3018 static InstX86Xadd *create(Cfg *Func, Operand *Dest, Variable *Source,
3031 InstX86Xadd(Cfg *Func, Operand *Dest, Variable *Source, bool Locked);
3045 static InstX86Xchg *create(Cfg *Func, Operand *Dest, Variable *Source) {
3057 InstX86Xchg(Cfg *Func, Operand *Dest, Variable *Source);
3108 static InstX86Pshufb *create(Cfg *Func, Variable *Dest, Operand *Source) {
3114 InstX86Pshufb(Cfg *Func, Variable *Dest, Operand *Source)
3124 static InstX86Punpckl *create(Cfg *Func, Variable *Dest, Operand *Source) {
3130 InstX86Punpckl(Cfg *Func, Variable *Dest, Operand *Source)
3140 Variable *Dest, Operand *Source) {
3146 InstX86Punpckh(Cfg *Func, Variable *Dest, Operand *Source)
3156 static InstX86Packss *create(Cfg *Func, Variable *Dest, Operand *Source) {
3162 InstX86Packss(Cfg *Func, Variable *Dest, Operand *Source)
3172 static InstX86Packus *create(Cfg *Func, Variable *Dest, Operand *Source) {
3178 InstX86Packus(Cfg *Func, Variable *Dest, Operand *Source)