- assert(i < 4); /* XXX only 4 float reg args right now! */
- if (IS_2_WORD_TYPE(t)) {
- M_DST(rd->argfltregs[i], REG_SP, JITSTACK);
- M_LDX(rd->argintregs[i], REG_SP, JITSTACK);
+ if (i < FLT_ARG_CNT) {
+
+ /* reg -> mem -> reg */
+
+ if (IS_2_WORD_TYPE(t)) {
+ M_DST(abi_registers_float_argument[i], REG_SP, JITSTACK);
+ M_LDX(abi_registers_integer_argument[i], REG_SP, JITSTACK);
+ }
+ else {
+ M_FST(abi_registers_float_argument[i], REG_SP, JITSTACK);
+ M_ILD(abi_registers_integer_argument[i], REG_SP, JITSTACK);
+ }