Lines Matching refs:Register

124   void Addu(Register rd, Register rs, Register rt);
125 void Addiu(Register rt, Register rs, uint16_t imm16);
126 void Subu(Register rd, Register rs, Register rt);
128 void MultR2(Register rs, Register rt); // R2
129 void MultuR2(Register rs, Register rt); // R2
130 void DivR2(Register rs, Register rt); // R2
131 void DivuR2(Register rs, Register rt); // R2
132 void MulR2(Register rd, Register rs, Register rt); // R2
133 void DivR2(Register rd, Register rs, Register rt); // R2
134 void ModR2(Register rd, Register rs, Register rt); // R2
135 void DivuR2(Register rd, Register rs, Register rt); // R2
136 void ModuR2(Register rd, Register rs, Register rt); // R2
137 void MulR6(Register rd, Register rs, Register rt); // R6
138 void MuhR6(Register rd, Register rs, Register rt); // R6
139 void MuhuR6(Register rd, Register rs, Register rt); // R6
140 void DivR6(Register rd, Register rs, Register rt); // R6
141 void ModR6(Register rd, Register rs, Register rt); // R6
142 void DivuR6(Register rd, Register rs, Register rt); // R6
143 void ModuR6(Register rd, Register rs, Register rt); // R6
145 void And(Register rd, Register rs, Register rt);
146 void Andi(Register rt, Register rs, uint16_t imm16);
147 void Or(Register rd, Register rs, Register rt);
148 void Ori(Register rt, Register rs, uint16_t imm16);
149 void Xor(Register rd, Register rs, Register rt);
150 void Xori(Register rt, Register rs, uint16_t imm16);
151 void Nor(Register rd, Register rs, Register rt);
153 void Movz(Register rd, Register rs, Register rt); // R2
154 void Movn(Register rd, Register rs, Register rt); // R2
155 void Seleqz(Register rd, Register rs, Register rt); // R6
156 void Selnez(Register rd, Register rs, Register rt); // R6
157 void ClzR6(Register rd, Register rs);
158 void ClzR2(Register rd, Register rs);
159 void CloR6(Register rd, Register rs);
160 void CloR2(Register rd, Register rs);
162 void Seb(Register rd, Register rt); // R2+
163 void Seh(Register rd, Register rt); // R2+
164 void Wsbh(Register rd, Register rt); // R2+
165 void Bitswap(Register rd, Register rt); // R6
167 void Sll(Register rd, Register rt, int shamt);
168 void Srl(Register rd, Register rt, int shamt);
169 void Rotr(Register rd, Register rt, int shamt); // R2+
170 void Sra(Register rd, Register rt, int shamt);
171 void Sllv(Register rd, Register rt, Register rs);
172 void Srlv(Register rd, Register rt, Register rs);
173 void Rotrv(Register rd, Register rt, Register rs); // R2+
174 void Srav(Register rd, Register rt, Register rs);
175 void Ext(Register rd, Register rt, int pos, int size); // R2+
176 void Ins(Register rd, Register rt, int pos, int size); // R2+
178 void Lb(Register rt, Register rs, uint16_t imm16);
179 void Lh(Register rt, Register rs, uint16_t imm16);
180 void Lw(Register rt, Register rs, uint16_t imm16);
181 void Lwl(Register rt, Register rs, uint16_t imm16);
182 void Lwr(Register rt, Register rs, uint16_t imm16);
183 void Lbu(Register rt, Register rs, uint16_t imm16);
184 void Lhu(Register rt, Register rs, uint16_t imm16);
185 void Lui(Register rt, uint16_t imm16);
187 void Mfhi(Register rd); // R2
188 void Mflo(Register rd); // R2
190 void Sb(Register rt, Register rs, uint16_t imm16);
191 void Sh(Register rt, Register rs, uint16_t imm16);
192 void Sw(Register rt, Register rs, uint16_t imm16);
193 void Swl(Register rt, Register rs, uint16_t imm16);
194 void Swr(Register rt, Register rs, uint16_t imm16);
196 void LlR2(Register rt, Register base, int16_t imm16 = 0);
197 void ScR2(Register rt, Register base, int16_t imm16 = 0);
198 void LlR6(Register rt, Register base, int16_t imm9 = 0);
199 void ScR6(Register rt, Register base, int16_t imm9 = 0);
201 void Slt(Register rd, Register rs, Register rt);
202 void Sltu(Register rd, Register rs, Register rt);
203 void Slti(Register rt, Register rs, uint16_t imm16);
204 void Sltiu(Register rt, Register rs, uint16_t imm16);
207 void Beq(Register rs, Register rt, uint16_t imm16);
208 void Bne(Register rs, Register rt, uint16_t imm16);
209 void Beqz(Register rt, uint16_t imm16);
210 void Bnez(Register rt, uint16_t imm16);
211 void Bltz(Register rt, uint16_t imm16);
212 void Bgez(Register rt, uint16_t imm16);
213 void Blez(Register rt, uint16_t imm16);
214 void Bgtz(Register rt, uint16_t imm16);
221 void Jalr(Register rd, Register rs);
222 void Jalr(Register rs);
223 void Jr(Register rs);
225 void Auipc(Register rs, uint16_t imm16); // R6
226 void Addiupc(Register rs, uint32_t imm19); // R6
228 void Jic(Register rt, uint16_t imm16); // R6
229 void Jialc(Register rt, uint16_t imm16); // R6
230 void Bltc(Register rs, Register rt, uint16_t imm16); // R6
231 void Bltzc(Register rt, uint16_t imm16); // R6
232 void Bgtzc(Register rt, uint16_t imm16); // R6
233 void Bgec(Register rs, Register rt, uint16_t imm16); // R6
234 void Bgezc(Register rt, uint16_t imm16); // R6
235 void Blezc(Register rt, uint16_t imm16); // R6
236 void Bltuc(Register rs, Register rt, uint16_t imm16); // R6
237 void Bgeuc(Register rs, Register rt, uint16_t imm16); // R6
238 void Beqc(Register rs, Register rt, uint16_t imm16); // R6
239 void Bnec(Register rs, Register rt, uint16_t imm16); // R6
240 void Beqzc(Register rs, uint32_t imm21); // R6
241 void Bnezc(Register rs, uint32_t imm21); // R6
310 void Movf(Register rd, Register rs, int cc = 0); // R2
311 void Movt(Register rd, Register rs, int cc = 0); // R2
338 void Mfc1(Register rt, FRegister fs);
339 void Mtc1(Register rt, FRegister fs);
340 void Mfhc1(Register rt, FRegister fs);
341 void Mthc1(Register rt, FRegister fs);
342 void MoveFromFpuHigh(Register rt, FRegister fs);
343 void MoveToFpuHigh(Register rt, FRegister fs);
344 void Lwc1(FRegister ft, Register rs, uint16_t imm16);
345 void Ldc1(FRegister ft, Register rs, uint16_t imm16);
346 void Swc1(FRegister ft, Register rs, uint16_t imm16);
347 void Sdc1(FRegister ft, Register rs, uint16_t imm16);
351 void Move(Register rd, Register rs);
352 void Clear(Register rd);
353 void Not(Register rd, Register rs);
356 void LoadConst32(Register rd, int32_t value);
357 void LoadConst64(Register reg_hi, Register reg_lo, int64_t value);
358 void LoadDConst64(FRegister rd, int64_t value, Register temp);
359 void LoadSConst32(FRegister r, int32_t value, Register temp);
360 void StoreConst32ToOffset(int32_t value, Register base, int32_t offset, Register temp);
361 void StoreConst64ToOffset(int64_t value, Register base, int32_t offset, Register temp);
362 void Addiu32(Register rt, Register rs, int32_t value, Register rtmp = AT);
367 void Jalr(MipsLabel* label, Register indirect_reg);
368 void Beq(Register rs, Register rt, MipsLabel* label);
369 void Bne(Register rs, Register rt, MipsLabel* label);
370 void Beqz(Register rt, MipsLabel* label);
371 void Bnez(Register rt, MipsLabel* label);
372 void Bltz(Register rt, MipsLabel* label);
373 void Bgez(Register rt, MipsLabel* label);
374 void Blez(Register rt, MipsLabel* label);
375 void Bgtz(Register rt, MipsLabel* label);
376 void Blt(Register rs, Register rt, MipsLabel* label);
377 void Bge(Register rs, Register rt, MipsLabel* label);
378 void Bltu(Register rs, Register rt, MipsLabel* label);
379 void Bgeu(Register rs, Register rt, MipsLabel* label);
387 void EmitLoad(ManagedRegister m_dst, Register src_register, int32_t src_offset, size_t size);
388 void LoadFromOffset(LoadOperandType type, Register reg, Register base, int32_t offset);
389 void LoadSFromOffset(FRegister reg, Register base, int32_t offset);
390 void LoadDFromOffset(FRegister reg, Register base, int32_t offset);
391 void StoreToOffset(StoreOperandType type, Register reg, Register base, int32_t offset);
392 void StoreSToOffset(FRegister reg, Register base, int32_t offset);
393 void StoreDToOffset(FRegister reg, Register base, int32_t offset);
399 void Push(Register rs);
400 void Pop(Register rd);
401 void PopAndReturn(Register rd, Register rt);
655 Register lhs_reg,
656 Register rhs_reg = ZERO);
658 Branch(bool is_r6, uint32_t location, uint32_t target, Register indirect_reg);
664 static bool IsNop(BranchCondition condition, Register lhs, Register rhs);
665 static bool IsUncond(BranchCondition condition, Register lhs, Register rhs);
671 Register GetLeftRegister() const;
672 Register GetRightRegister() const;
763 void EmitR(int opcode, Register rs, Register rt, Register rd, int shamt, int funct);
764 void EmitI(int opcode, Register rs, Register rt, uint16_t imm);
765 void EmitI21(int opcode, Register rs, uint32_t imm21);
769 void EmitBcondR2(BranchCondition cond, Register rs, Register rt, uint16_t imm16);
770 void EmitBcondR6(BranchCondition cond, Register rs, Register rt, uint32_t imm16_21);
773 void Bcond(MipsLabel* label, BranchCondition condition, Register lhs, Register rhs = ZERO);
774 void Call(MipsLabel* label, Register indirect_reg);