Lines Matching refs:Variable
64 void setImplicitRet(Variable *Ret) { ImplicitRet = Ret; }
65 Variable *getImplicitRet() const { return ImplicitRet; }
67 Variable *getPhysicalRegister(RegNumT RegNum,
73 getRegistersForVariable(const Variable *Var) const override {
79 getAllRegistersForVariable(const Variable *Var) const override {
134 void emitVariable(const Variable *Var) const override;
166 void _add(Variable *Dest, Variable *Src0, Variable *Src1) {
170 void _addu(Variable *Dest, Variable *Src0, Variable *Src1) {
174 void _and(Variable *Dest, Variable *Src0, Variable *Src1) {
178 void _andi(Variable *Dest, Variable *Src, uint32_t Imm) {
206 void _ret(Variable *RA, Variable *Src0 = nullptr) {
210 void _abs_d(Variable *Dest, Variable *Src) {
214 void _abs_s(Variable *Dest, Variable *Src) {
218 void _addi(Variable *Dest, Variable *Src, uint32_t Imm) {
222 void _add_d(Variable *Dest, Variable *Src0, Variable *Src1) {
226 void _add_s(Variable *Dest, Variable *Src0, Variable *Src1) {
230 void _addiu(Variable *Dest, Variable *Src, uint32_t Imm) {
234 void _addiu(Variable *Dest, Variable *Src0, Operand *Src1, RelocOp Reloc) {
238 void _c_eq_d(Variable *Src0, Variable *Src1) {
242 void _c_eq_s(Variable *Src0, Variable *Src1) {
246 void _c_ole_d(Variable *Src0, Variable *Src1) {
250 void _c_ole_s(Variable *Src0, Variable *Src1) {
254 void _c_olt_d(Variable *Src0, Variable *Src1) {
258 void _c_olt_s(Variable *Src0, Variable *Src1) {
262 void _c_ueq_d(Variable *Src0, Variable *Src1) {
266 void _c_ueq_s(Variable *Src0, Variable *Src1) {
270 void _c_ule_d(Variable *Src0, Variable *Src1) {
274 void _c_ule_s(Variable *Src0, Variable *Src1) {
278 void _c_ult_d(Variable *Src0, Variable *Src1) {
282 void _c_ult_s(Variable *Src0, Variable *Src1) {
286 void _c_un_d(Variable *Src0, Variable *Src1) {
290 void _c_un_s(Variable *Src0, Variable *Src1) {
294 void _clz(Variable *Dest, Variable *Src) {
298 void _cvt_d_l(Variable *Dest, Variable *Src) {
302 void _cvt_d_s(Variable *Dest, Variable *Src) {
306 void _cvt_d_w(Variable *Dest, Variable *Src) {
310 void _cvt_s_d(Variable *Dest, Variable *Src) {
314 void _cvt_s_l(Variable *Dest, Variable *Src) {
318 void _cvt_s_w(Variable *Dest, Variable *Src) {
322 void _div(Variable *Dest, Variable *Src0, Variable *Src1) {
326 void _div_d(Variable *Dest, Variable *Src0, Variable *Src1) {
330 void _div_s(Variable *Dest, Variable *Src0, Variable *Src1) {
334 void _divu(Variable *Dest, Variable *Src0, Variable *Src1) {
338 void _ldc1(Variable *Value, OperandMIPS32Mem *Mem, RelocOp Reloc = RO_No) {
342 void _ll(Variable *Value, OperandMIPS32Mem *Mem) {
346 void _lw(Variable *Value, OperandMIPS32Mem *Mem) {
350 void _lwc1(Variable *Value, OperandMIPS32Mem *Mem, RelocOp Reloc = RO_No) {
354 void _lui(Variable *Dest, Operand *Src, RelocOp Reloc = RO_No) {
358 void _mfc1(Variable *Dest, Variable *Src) {
362 void _mfhi(Variable *Dest, Operand *Src) {
366 void _mflo(Variable *Dest, Operand *Src) {
370 void _mov(Variable *Dest, Operand *Src0, Operand *Src1 = nullptr) {
372 // Variable* Src0_ = llvm::dyn_cast<Variable>(Src0);
386 void _mov_redefined(Variable *Dest, Operand *Src0, Operand *Src1 = nullptr) {
401 void _mov_fp64_to_i64(Variable *Dest, Operand *Src, Int64Part Int64HiLo) {
406 void _mov_d(Variable *Dest, Variable *Src) {
410 void _mov_s(Variable *Dest, Variable *Src) {
414 void _movf(Variable *Dest, Variable *Src0, Operand *FCC) {
418 void _movn(Variable *Dest, Variable *Src0, Variable *Src1) {
422 void _movn_d(Variable *Dest, Variable *Src0, Variable *Src1) {
426 void _movn_s(Variable *Dest, Variable *Src0, Variable *Src1) {
430 void _movt(Variable *Dest, Variable *Src0, Operand *FCC) {
434 void _movz(Variable *Dest, Variable *Src0, Variable *Src1) {
438 void _movz_d(Variable *Dest, Variable *Src0, Variable *Src1) {
442 void _movz_s(Variable *Dest, Variable *Src0, Variable *Src1) {
446 void _mtc1(Variable *Dest, Variable *Src) {
450 void _mthi(Variable *Dest, Operand *Src) {
454 void _mtlo(Variable *Dest, Operand *Src) {
458 void _mul(Variable *Dest, Variable *Src0, Variable *Src1) {
462 void _mul_d(Variable *Dest, Variable *Src0, Variable *Src1) {
466 void _mul_s(Variable *Dest, Variable *Src0, Variable *Src1) {
470 void _mult(Variable *Dest, Variable *Src0, Variable *Src1) {
474 void _multu(Variable *Dest, Variable *Src0, Variable *Src1) {
480 void _nor(Variable *Dest, Variable *Src0, Variable *Src1) {
484 void _not(Variable *Dest, Variable *Src0) {
488 void _or(Variable *Dest, Variable *Src0, Variable *Src1) {
492 void _ori(Variable *Dest, Variable *Src, uint32_t Imm) {
496 InstMIPS32Sc *_sc(Variable *Value, OperandMIPS32Mem *Mem) {
500 void _sdc1(Variable *Value, OperandMIPS32Mem *Mem) {
504 void _sll(Variable *Dest, Variable *Src, uint32_t Imm) {
508 void _sllv(Variable *Dest, VariableVariable *Src1) {
512 void _slt(Variable *Dest, Variable *Src0, Variable *Src1) {
516 void _slti(Variable *Dest, Variable *Src, uint32_t Imm) {
520 void _sltiu(Variable *Dest, Variable *Src, uint32_t Imm) {
524 void _sltu(Variable *Dest, Variable *Src0, Variable *Src1) {
528 void _sqrt_d(Variable *Dest, Variable *Src) {
532 void _sqrt_s(Variable *Dest, Variable *Src) {
536 void _sra(Variable *Dest, Variable *Src, uint32_t Imm) {
540 void _srav(Variable *Dest, Variable *Src0, Variable *Src1) {
544 void _srl(Variable *Dest, Variable *Src, uint32_t Imm) {
548 void _srlv(Variable *Dest, Variable *Src0, Variable *Src1) {
552 void _sub(Variable *Dest, Variable *Src0, Variable *Src1) {
556 void _sub_d(Variable *Dest, Variable *Src0, Variable *Src1) {
560 void _sub_s(Variable *Dest, Variable *Src0, Variable *Src1) {
564 void _subu(Variable *Dest, Variable *Src0, Variable *Src1) {
568 void _sw(Variable *Value, OperandMIPS32Mem *Mem) {
572 void _swc1(Variable *Value, OperandMIPS32Mem *Mem) {
578 void _teq(Variable *Src0, Variable *Src1, uint32_t TrapCode) {
582 void _trunc_l_d(Variable *Dest, Variable *Src) {
586 void _trunc_l_s(Variable *Dest, Variable *Src) {
590 void _trunc_w_d(Variable *Dest, Variable *Src) {
594 void _trunc_w_s(Variable *Dest, Variable *Src) {
598 void _xor(Variable *Dest, Variable *Src0, Variable *Src1) {
602 void _xori(Variable *Dest, Variable *Src, uint32_t Imm) {
620 void lw(Variable *Dest, OperandMIPS32Mem *Mem);
621 void sw(Variable *Dest, OperandMIPS32Mem *Mem);
622 void ll(Variable *Dest, OperandMIPS32Mem *Mem);
623 void sc(Variable *Dest, OperandMIPS32Mem *Mem);
624 void lwc1(Variable *Dest, OperandMIPS32Mem *Mem, RelocOp Reloc = RO_No);
625 void ldc1(Variable *Dest, OperandMIPS32Mem *Mem, RelocOp Reloc = RO_No);
626 void ret(Variable *RetAddr, Variable *RetValue);
627 void reset_sp(Variable *Src);
628 InstMIPS32Call *jal(Variable *ReturnReg, Operand *CallTarget);
668 Variable *legalizeToVar(Operand *From, RegNumT RegNum = RegNumT());
670 Variable *legalizeToReg(Operand *From, RegNumT RegNum = RegNumT());
672 Variable *makeReg(Type Ty, RegNumT RegNum = RegNumT());
674 Variable *getZero() {
680 Variable *I32Reg(RegNumT RegNum = RegNumT()) {
684 Variable *F32Reg(RegNumT RegNum = RegNumT()) {
688 Variable *F64Reg(RegNumT RegNum = RegNumT()) {
693 Variable *copyToReg(Operand *Src, RegNumT RegNum = RegNumT());
707 // Ensure that a 64-bit Variable has been split into 2 32-bit
710 void split64(Variable *Var);
715 void finishArgumentLowering(Variable *Arg, bool PartialOnStack,
716 Variable *FramePtr, size_t BasicFrameOffset,
767 void lowerInt64Arithmetic(const InstArithmetic *Instr, Variable *Dest,
778 void createArithInst(Intrinsics::AtomicRMWOperation Operation, Variable *Dest,
779 Variable *Src0, Variable *Src1);
815 /// Legalizes Mem. if Mem.Base is a rematerializable variable,
820 Variable *legalizeImmediate(int32_t Imm);
822 /// Legalizes Mov if its Source (or Destination) is a spilled Variable, or
823 /// if its Source is a Rematerializable variable (this form is used in lieu
832 Variable *newBaseRegister(Variable *Base, int32_t Offset,
836 Variable *const StackOrFrameReg;
860 Variable *ImplicitRet = nullptr; /// Implicit return
877 auto *Var = llvm::dyn_cast<Variable>(Opnd);
911 // false once we find the end of the live range for the variable defined
920 // ComputationMap maps a Variable number to a payload identifying which