Inline arg
IO fixes git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@12 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
25
C/amasm.c
25
C/amasm.c
@@ -722,9 +722,6 @@ a_p(op_numbers opcode)
|
||||
case _eq:
|
||||
op = _p_eq;
|
||||
break;
|
||||
case _arg:
|
||||
op = _p_arg;
|
||||
break;
|
||||
case _functor:
|
||||
op = _p_functor;
|
||||
break;
|
||||
@@ -1641,6 +1638,9 @@ a_f2(int var)
|
||||
case _slr:
|
||||
code_p->opc = emit_op(_p_slr_y_vv);
|
||||
break;
|
||||
case _arg:
|
||||
code_p->opc = emit_op(_p_arg_y_vv);
|
||||
break;
|
||||
}
|
||||
code_p->u.yxx.y = emit_y(ve);
|
||||
code_p->u.yxx.x1 = x1_arg;
|
||||
@@ -1687,6 +1687,9 @@ a_f2(int var)
|
||||
save_machine_regs();
|
||||
longjmp(CompilerBotch, 1);
|
||||
break;
|
||||
case _arg:
|
||||
code_p->opc = emit_op(_p_arg_y_cv);
|
||||
break;
|
||||
}
|
||||
code_p->u.ycx.y = emit_y(ve);
|
||||
code_p->u.ycx.c = c_arg;
|
||||
@@ -1723,6 +1726,11 @@ a_f2(int var)
|
||||
case _slr:
|
||||
code_p->opc = emit_op(_p_slr_y_vc);
|
||||
break;
|
||||
case _arg:
|
||||
Error(SYSTEM_ERROR, x2_arg, "internal assembler error for arg/3");
|
||||
save_machine_regs();
|
||||
longjmp(CompilerBotch, 1);
|
||||
break;
|
||||
}
|
||||
code_p->u.yxc.y = emit_y(ve);
|
||||
code_p->u.yxc.c = c_arg;
|
||||
@@ -1760,6 +1768,9 @@ a_f2(int var)
|
||||
case _slr:
|
||||
code_p->opc = emit_op(_p_slr_vv);
|
||||
break;
|
||||
case _arg:
|
||||
code_p->opc = emit_op(_p_arg_vv);
|
||||
break;
|
||||
}
|
||||
code_p->u.xxx.x = emit_x(ve->NoOfVE & MaskVarAdrs);
|
||||
code_p->u.xxx.x1 = x1_arg;
|
||||
@@ -1802,6 +1813,9 @@ a_f2(int var)
|
||||
case _slr:
|
||||
code_p->opc = emit_op(_p_slr_cv);
|
||||
break;
|
||||
case _arg:
|
||||
code_p->opc = emit_op(_p_arg_cv);
|
||||
break;
|
||||
}
|
||||
code_p->u.xxc.x = emit_x(ve->NoOfVE & MaskVarAdrs);
|
||||
code_p->u.xxc.c = c_arg;
|
||||
@@ -1838,6 +1852,11 @@ a_f2(int var)
|
||||
case _slr:
|
||||
code_p->opc = emit_op(_p_slr_vc);
|
||||
break;
|
||||
case _arg:
|
||||
Error(SYSTEM_ERROR, x2_arg, "internal assembler error for arg/3");
|
||||
save_machine_regs();
|
||||
longjmp(CompilerBotch, 1);
|
||||
break;
|
||||
}
|
||||
code_p->u.xcx.x = emit_x(ve->NoOfVE & MaskVarAdrs);
|
||||
code_p->u.xcx.c = c_arg;
|
||||
|
Reference in New Issue
Block a user