Dmitry V. Levin | d70d1c4 | 2015-03-22 22:13:55 +0000 | [diff] [blame] | 1 | #if defined LINUX_MIPSN64 |
| 2 | tcp->u_arg[0] = mips_REG_A0; |
| 3 | tcp->u_arg[1] = mips_REG_A1; |
| 4 | tcp->u_arg[2] = mips_REG_A2; |
| 5 | tcp->u_arg[3] = mips_REG_A3; |
| 6 | tcp->u_arg[4] = mips_REG_A4; |
| 7 | tcp->u_arg[5] = mips_REG_A5; |
| 8 | #elif defined LINUX_MIPSN32 |
| 9 | tcp->u_arg[0] = tcp->ext_arg[0] = mips_REG_A0; |
| 10 | tcp->u_arg[1] = tcp->ext_arg[1] = mips_REG_A1; |
| 11 | tcp->u_arg[2] = tcp->ext_arg[2] = mips_REG_A2; |
| 12 | tcp->u_arg[3] = tcp->ext_arg[3] = mips_REG_A3; |
| 13 | tcp->u_arg[4] = tcp->ext_arg[4] = mips_REG_A4; |
| 14 | tcp->u_arg[5] = tcp->ext_arg[5] = mips_REG_A5; |
| 15 | #elif defined LINUX_MIPSO32 |
| 16 | tcp->u_arg[0] = mips_REG_A0; |
| 17 | tcp->u_arg[1] = mips_REG_A1; |
| 18 | tcp->u_arg[2] = mips_REG_A2; |
| 19 | tcp->u_arg[3] = mips_REG_A3; |
| 20 | if (tcp->s_ent->nargs > 4) { |
| 21 | umoven(tcp, mips_REG_SP + 4 * 4, |
| 22 | (tcp->s_ent->nargs - 4) * sizeof(tcp->u_arg[0]), |
| 23 | &tcp->u_arg[4]); |
| 24 | } |
| 25 | #else |
| 26 | # error unsupported mips abi |
| 27 | #endif |