Lines Matching full:args
527 static void tcg_out_qemu_ld (TCGContext *s, const TCGArg *args, int opc)
538 data_reg = *args++;
540 data_reg2 = *args++;
543 addr_reg = *args++;
545 addr_reg2 = *args++;
547 mem_index = *args;
724 static void tcg_out_qemu_st (TCGContext *s, const TCGArg *args, int opc)
735 data_reg = *args++;
737 data_reg2 = *args++;
740 addr_reg = *args++;
742 addr_reg2 = *args++;
744 mem_index = *args;
1078 static void tcg_out_cr7eq_from_cond (TCGContext *s, const TCGArg *args,
1081 TCGCond cond = args[4];
1098 tcg_out_cmp (s, cond, args[0], args[2], const_args[2], 6);
1099 tcg_out_cmp (s, cond, args[1], args[3], const_args[3], 7);
1111 tcg_out_cmp (s, b->cond2, args[1], args[3], const_args[3], 5);
1112 tcg_out_cmp (s, tcg_unsigned_cond (cond), args[0], args[2],
1231 static void tcg_out_setcond2 (TCGContext *s, const TCGArg *args,
1234 tcg_out_cr7eq_from_cond (s, args + 1, const_args + 1);
1237 | RA (args[0])
1256 static void tcg_out_brcond2 (TCGContext *s, const TCGArg *args,
1259 tcg_out_cr7eq_from_cond (s, args, const_args);
1260 tcg_out_bc (s, (BC | BI (7, CR_EQ) | BO_COND_TRUE), args[5]);
1294 static void tcg_out_op(TCGContext *s, TCGOpcode opc, const TCGArg *args,
1299 tcg_out_movi (s, TCG_TYPE_I32, TCG_REG_R3, args[0]);
1306 s->tb_jmp_offset[args[0]] = s->code_ptr - s->code_buf;
1312 s->tb_next_offset[args[0]] = s->code_ptr - s->code_buf;
1316 TCGLabel *l = &s->labels[args[0]];
1326 tcg_out_reloc (s, s->code_ptr - 4, R_PPC_REL24, args[0], 0);
1331 tcg_out_call (s, args[0], const_args[0]);
1335 tcg_out_b (s, 0, args[0]);
1338 tcg_out32 (s, MTSPR | RS (args[0]) | CTR);
1343 tcg_out_movi(s, TCG_TYPE_I32, args[0], args[1]);
1346 tcg_out_ldst (s, args[0], args[1], args[2], LBZ, LBZX);
1349 tcg_out_ldst (s, args[0], args[1], args[2], LBZ, LBZX);
1350 tcg_out32 (s, EXTSB | RS (args[0]) | RA (args[0]));
1353 tcg_out_ldst (s, args[0], args[1], args[2], LHZ, LHZX);
1356 tcg_out_ldst (s, args[0], args[1], args[2], LHA, LHAX);
1359 tcg_out_ldst (s, args[0], args[1], args[2], LWZ, LWZX);
1362 tcg_out_ldst (s, args[0], args[1], args[2], STB, STBX);
1365 tcg_out_ldst (s, args[0], args[1], args[2], STH, STHX);
1368 tcg_out_ldst (s, args[0], args[1], args[2], STW, STWX);
1373 ppc_addi (s, args[0], args[1], args[2]);
1375 tcg_out32 (s, ADD | TAB (args[0], args[1], args[2]));
1379 ppc_addi (s, args[0], args[1], -args[2]);
1381 tcg_out32 (s, SUBF | TAB (args[0], args[2], args[1]));
1388 c = args[2];
1391 tcg_out_movi (s, TCG_TYPE_I32, args[0], 0);
1420 | RA (args[0])
1421 | RS (args[1])
1432 tcg_out32 (s, ANDI | RS (args[1]) | RA (args[0]) | c);
1434 tcg_out32 (s, ANDIS | RS (args[1]) | RA (args[0])
1438 tcg_out32 (s, AND | SAB (args[1], args[0], 0));
1443 tcg_out32 (s, AND | SAB (args[1], args[0], args[2]));
1447 if (args[2] & 0xffff) {
1448 tcg_out32 (s, ORI | RS (args[1]) | RA (args[0])
1449 | (args[2] & 0xffff));
1450 if (args[2] >> 16)
1451 tcg_out32 (s, ORIS | RS (args[0]) | RA (args[0])
1452 | ((args[2] >> 16) & 0xffff));
1455 tcg_out32 (s, ORIS | RS (args[1]) | RA (args[0])
1456 | ((args[2] >> 16) & 0xffff));
1460 tcg_out32 (s, OR | SAB (args[1], args[0], args[2]));
1464 if ((args[2] & 0xffff) == args[2])
1465 tcg_out32 (s, XORI | RS (args[1]) | RA (args[0])
1466 | (args[2] & 0xffff));
1467 else if ((args[2] & 0xffff0000) == args[2])
1468 tcg_out32 (s, XORIS | RS (args[1]) | RA (args[0])
1469 | ((args[2] >> 16) & 0xffff));
1471 tcg_out_movi (s, TCG_TYPE_I32, 0, args[2]);
1472 tcg_out32 (s, XOR | SAB (args[1], args[0], 0));
1476 tcg_out32 (s, XOR | SAB (args[1], args[0], args[2]));
1479 tcg_out32 (s, ANDC | SAB (args[1], args[0], args[2]));
1482 tcg_out32 (s, ORC | SAB (args[1], args[0], args[2]));
1485 tcg_out32 (s, EQV | SAB (args[1], args[0], args[2]));
1488 tcg_out32 (s, NAND | SAB (args[1], args[0], args[2]));
1491 tcg_out32 (s, NOR | SAB (args[1], args[0], args[2]));
1496 if (args[2] == (int16_t) args[2])
1497 tcg_out32 (s, MULLI | RT (args[0]) | RA (args[1])
1498 | (args[2] & 0xffff));
1500 tcg_out_movi (s, TCG_TYPE_I32, 0, args[2]);
1501 tcg_out32 (s, MULLW | TAB (args[0], args[1], 0));
1505 tcg_out32 (s, MULLW | TAB (args[0], args[1], args[2]));
1509 tcg_out32 (s, DIVW | TAB (args[0], args[1], args[2]));
1513 tcg_out32 (s, DIVWU | TAB (args[0], args[1], args[2]));
1517 tcg_out32 (s, DIVW | TAB (0, args[1], args[2]));
1518 tcg_out32 (s, MULLW | TAB (0, 0, args[2]));
1519 tcg_out32 (s, SUBF | TAB (args[0], 0, args[1]));
1523 tcg_out32 (s, DIVWU | TAB (0, args[1], args[2]));
1524 tcg_out32 (s, MULLW | TAB (0, 0, args[2]));
1525 tcg_out32 (s, SUBF | TAB (args[0], 0, args[1]));
1529 if (args[0] == args[2] || args[0] == args[3]) {
1530 tcg_out32 (s, MULLW | TAB (0, args[2], args[3]));
1531 tcg_out32 (s, MULHWU | TAB (args[1], args[2], args[3]));
1532 tcg_out_mov (s, TCG_TYPE_I32, args[0], 0);
1535 tcg_out32 (s, MULLW | TAB (args[0], args[2], args[3]));
1536 tcg_out32 (s, MULHWU | TAB (args[1], args[2], args[3]));
1543 | RA (args[0])
1544 | RS (args[1])
1545 | SH (args[2])
1547 | ME (31 - args[2])
1552 tcg_out32 (s, SLW | SAB (args[1], args[0], args[2]));
1557 | RA (args[0])
1558 | RS (args[1])
1559 | SH (32 - args[2])
1560 | MB (args[2])
1566 tcg_out32 (s, SRW | SAB (args[1], args[0], args[2]));
1570 tcg_out32 (s, SRAWI | RS (args[1]) | RA (args[0]) | SH (args[2]));
1572 tcg_out32 (s, SRAW | SAB (args[1], args[0], args[2]));
1577 | RA (args[0])
1578 | RS (args[1])
1581 | (const_args[2] ? RLWINM | SH (args[2])
1582 : RLWNM | RB (args[2]))
1589 if (!args[2]) {
1590 tcg_out_mov (s, TCG_TYPE_I32, args[0], args[1]);
1594 | RA (args[0])
1595 | RS (args[1])
1596 | SH (32 - args[2])
1603 tcg_out32 (s, SUBFIC | RT (0) | RA (args[2]) | 32);
1605 | RA (args[0])
1606 | RS (args[1])
1615 if (args[0] == args[3] || args[0] == args[5]) {
1616 tcg_out32 (s, ADDC | TAB (0, args[2], args[4]));
1617 tcg_out32 (s, ADDE | TAB (args[1], args[3], args[5]));
1618 tcg_out_mov (s, TCG_TYPE_I32, args[0], 0);
1621 tcg_out32 (s, ADDC | TAB (args[0], args[2], args[4]));
1622 tcg_out32 (s, ADDE | TAB (args[1], args[3], args[5]));
1626 if (args[0] == args[3] || args[0] == args[5]) {
1627 tcg_out32 (s, SUBFC | TAB (0, args[4], args[2]));
1628 tcg_out32 (s, SUBFE | TAB (args[1], args[5], args[3]));
1629 tcg_out_mov (s, TCG_TYPE_I32, args[0], 0);
1632 tcg_out32 (s, SUBFC | TAB (args[0], args[4], args[2]));
1633 tcg_out32 (s, SUBFE | TAB (args[1], args[5], args[3]));
1639 args[0] = r0
1640 args[1] = r1
1641 args[2] = cond
1642 args[3] = r1 is const
1643 args[4] = label_index
1645 tcg_out_brcond (s, args[2], args[0], args[1], const_args[1], args[3]);
1648 tcg_out_brcond2(s, args, const_args);
1652 tcg_out32 (s, NEG | RT (args[0]) | RA (args[1]));
1656 tcg_out32 (s, NOR | SAB (args[1], args[0], args[1]));
1660 tcg_out_qemu_ld(s, args, 0);
1663 tcg_out_qemu_ld(s, args, 0 | 4);
1666 tcg_out_qemu_ld(s, args, 1);
1669 tcg_out_qemu_ld(s, args, 1 | 4);
1672 tcg_out_qemu_ld(s, args, 2);
1675 tcg_out_qemu_ld(s, args, 3);
1678 tcg_out_qemu_st(s, args, 0);
1681 tcg_out_qemu_st(s, args, 1);
1684 tcg_out_qemu_st(s, args, 2);
1687 tcg_out_qemu_st(s, args, 3);
1691 tcg_out32 (s, EXTSB | RS (args[1]) | RA (args[0]));
1695 | RA (args[0])
1696 | RS (args[1])
1703 tcg_out32 (s, EXTSH | RS (args[1]) | RA (args[0]));
1707 | RA (args[0])
1708 | RS (args[1])
1716 tcg_out_setcond (s, args[3], args[0], args[1], args[2], const_args[2]);
1719 tcg_out_setcond2 (s, args, const_args);
1730 | RS (args[1])
1738 | RA (args[0])
1739 | RS (args[1])
1746 tcg_out32 (s, OR | SAB (0, args[0], args[0]));
1752 int a0 = args[0];
1754 /* a1 = args[1] # abcd */
1756 if (a0 == args[1]) {
1763 | RS (args[1])
1772 | RS (args[1])
1781 | RS (args[1])
1788 tcg_out_mov (s, TCG_TYPE_I32, args[0], a0);