Lines Matching refs:ra
127 int ra; in dform_ea() local
130 ra = (instr >> 16) & 0x1f; in dform_ea()
132 if (ra) in dform_ea()
133 ea += regs->gpr[ra]; in dform_ea()
145 int ra; in dsform_ea() local
148 ra = (instr >> 16) & 0x1f; in dsform_ea()
150 if (ra) in dsform_ea()
151 ea += regs->gpr[ra]; in dsform_ea()
162 int ra; in dqform_ea() local
165 ra = (instr >> 16) & 0x1f; in dqform_ea()
167 if (ra) in dqform_ea()
168 ea += regs->gpr[ra]; in dqform_ea()
180 int ra, rb; in xform_ea() local
183 ra = (instr >> 16) & 0x1f; in xform_ea()
186 if (ra) in xform_ea()
187 ea += regs->gpr[ra]; in xform_ea()
200 int ra, prefix_r; in mlsd_8lsd_ea() local
205 ra = GET_PREFIX_RA(suffix); in mlsd_8lsd_ea()
218 if (!prefix_r && ra) in mlsd_8lsd_ea()
219 ea += regs->gpr[ra]; in mlsd_8lsd_ea()
220 else if (!prefix_r && !ra) in mlsd_8lsd_ea()
1214 unsigned int opcode, ra, rb, rc, rd, spr, u; in analyse_instr() local
1268 ra = 7 - ((word >> 18) & 0x7); in analyse_instr()
1270 ra *= 4; in analyse_instr()
1271 val = (regs->ccr >> ra) & 0xf; in analyse_instr()
1305 ra = (word >> 16) & 0x1f; in analyse_instr()
1308 ra = (regs->ccr >> (31 - ra)) & 1; in analyse_instr()
1310 val = (word >> (6 + ra * 2 + rb)) & 1; in analyse_instr()
1344 ra = (word >> 16) & 0x1f; in analyse_instr()
1355 ra = GET_PREFIX_RA(suffix); in analyse_instr()
1363 if (prefix_r && ra) in analyse_instr()
1374 if (rd & trap_compare(regs->gpr[ra], (short) word)) in analyse_instr()
1379 if (rd & trap_compare((int)regs->gpr[ra], (short) word)) in analyse_instr()
1396 "=r" (op->val) : "r" (regs->gpr[ra]), in analyse_instr()
1402 "=r" (op->val) : "r" (regs->gpr[ra]), in analyse_instr()
1408 "=r" (op->val) : "r" (regs->gpr[ra]), in analyse_instr()
1421 op->val = regs->gpr[ra] * (short) word; in analyse_instr()
1426 add_with_carry(regs, op, rd, ~regs->gpr[ra], imm, 1); in analyse_instr()
1431 val = regs->gpr[ra]; in analyse_instr()
1441 val = regs->gpr[ra]; in analyse_instr()
1451 add_with_carry(regs, op, rd, regs->gpr[ra], imm, 0); in analyse_instr()
1456 add_with_carry(regs, op, rd, regs->gpr[ra], imm, 0); in analyse_instr()
1462 if (ra) in analyse_instr()
1463 imm += regs->gpr[ra]; in analyse_instr()
1469 if (ra) in analyse_instr()
1470 imm += regs->gpr[ra]; in analyse_instr()
1492 op->val = (regs->gpr[ra] & ~imm) | (ROTATE(val, rb) & imm); in analyse_instr()
1558 val = (regs->gpr[ra] & ~imm) | in analyse_instr()
1584 val2 = (ra) ? regs->gpr[ra] : 0; in analyse_instr()
1593 (rd & trap_compare((int)regs->gpr[ra], in analyse_instr()
1599 if (rd & trap_compare(regs->gpr[ra], regs->gpr[rb])) in analyse_instr()
1679 val = regs->gpr[ra]; in analyse_instr()
1692 val = regs->gpr[ra]; in analyse_instr()
1712 add_with_carry(regs, op, rd, ~regs->gpr[ra], in analyse_instr()
1718 "r" (regs->gpr[ra]), "r" (regs->gpr[rb])); in analyse_instr()
1722 add_with_carry(regs, op, rd, regs->gpr[ra], in analyse_instr()
1728 "r" (regs->gpr[ra]), "r" (regs->gpr[rb])); in analyse_instr()
1732 op->val = regs->gpr[rb] - regs->gpr[ra]; in analyse_instr()
1737 "r" (regs->gpr[ra]), "r" (regs->gpr[rb])); in analyse_instr()
1742 "r" (regs->gpr[ra]), "r" (regs->gpr[rb])); in analyse_instr()
1746 op->val = -regs->gpr[ra]; in analyse_instr()
1750 add_with_carry(regs, op, rd, ~regs->gpr[ra], in analyse_instr()
1755 add_with_carry(regs, op, rd, regs->gpr[ra], in analyse_instr()
1760 add_with_carry(regs, op, rd, ~regs->gpr[ra], 0L, in analyse_instr()
1765 add_with_carry(regs, op, rd, regs->gpr[ra], 0L, in analyse_instr()
1770 add_with_carry(regs, op, rd, ~regs->gpr[ra], -1L, in analyse_instr()
1775 op->val = regs->gpr[ra] * regs->gpr[rb]; in analyse_instr()
1779 add_with_carry(regs, op, rd, regs->gpr[ra], -1L, in analyse_instr()
1784 op->val = (long)(int) regs->gpr[ra] * in analyse_instr()
1792 op->val = regs->gpr[ra] % regs->gpr[rb]; in analyse_instr()
1796 op->val = regs->gpr[ra] + regs->gpr[rb]; in analyse_instr()
1802 op->val = (unsigned int) regs->gpr[ra] % in analyse_instr()
1807 op->val = regs->gpr[ra] / regs->gpr[rb]; in analyse_instr()
1811 op->val = (unsigned int) regs->gpr[ra] / in analyse_instr()
1816 op->val = (long int) regs->gpr[ra] / in analyse_instr()
1821 op->val = (int) regs->gpr[ra] / in analyse_instr()
1827 "=r" (op->val) : "r" (regs->gpr[ra]), in analyse_instr()
1832 "=r" (op->val) : "r" (regs->gpr[ra]), in analyse_instr()
1839 switch (ra & 0x3) { in analyse_instr()
1861 op->val = (long int) regs->gpr[ra] % in analyse_instr()
1868 op->val = (int) regs->gpr[ra] % in analyse_instr()
2115 op->update_reg = ra; in analyse_instr()
2160 if (!((rd & 1) || rd == ra || rd == rb)) in analyse_instr()
2289 op->ea = ra ? regs->gpr[ra] : 0; in analyse_instr()
2356 op->ea = ra ? regs->gpr[ra] : 0; in analyse_instr()
2402 op->ea = ra ? regs->gpr[ra] : 0; in analyse_instr()
2443 op->ea = ra ? regs->gpr[ra] : 0; in analyse_instr()
2622 if (ra >= rd) in analyse_instr()
2661 if (!((rd & 1) || (rd == ra))) in analyse_instr()
2790 ra = GET_PREFIX_RA(suffix); in analyse_instr()
2791 op->update_reg = ra; in analyse_instr()
2800 if (prefix_r && ra) in analyse_instr()
2866 if (prefix_r && ra) in analyse_instr()
2915 if (ra == rd) in analyse_instr()
2921 if (ra == 0) in analyse_instr()
2944 op->reg = ra; in analyse_instr()