mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-18 18:40:22 +02:00
Build and pass all test cases on Alpha Linux
* check/lightning.c, include/lightning.h: Add the new jit_va_push interface. That should be called when passing a va_list to a C function. This is required because on Alpha a va_list is passed by value, and lightning does not know about data types, so, cannot understand it is pushing a va_list as argument. * lib/jit_names.c, lib/lightning.c: Minor changes for the new jit_code_va_push. * check/cva_list.c: Update only test case using jit_va_push, to pass a va_list to a C function. doc/body.texi: Better documentation of the varargs interface. * jit_alpha.c, jit_alpha-cpu.c: Update to properly push a C va_list and correctly calculate varargs offset. * lib/jit_aarch64-sz.c, lib/jit_aarch64.c, lib/jit_alpha-sz.c, lib/jit_arm-sz.c, lib/jit_arm.c, lib/jit_hppa-sz.c, lib/jit_hppa.c, lib/jit_ia64-sz.c, lib/jit_ia64.c, lib/jit_mips-sz.c, lib/jit_mips.c, lib/jit_ppc-sz.c, lib/jit_ppc.c, lib/jit_s390-sz.c, lib/jit_s390.c, lib/jit_sparc-sz.c, lib/jit_sparc.c, lib/jit_x86-sz.c, lib/jit_x86.c: Update for the new jit_va_push interface.
This commit is contained in:
parent
b64b82ca51
commit
ed5589ce59
28 changed files with 186 additions and 21 deletions
|
@ -202,6 +202,8 @@ typedef enum {
|
|||
|
||||
#define jit_ellipsis() _jit_ellipsis(_jit)
|
||||
jit_code_ellipsis,
|
||||
#define jit_va_push(u) _jit_va_push(_jit,u)
|
||||
jit_code_va_push,
|
||||
#define jit_allocai(u) _jit_allocai(_jit,u)
|
||||
#define jit_allocar(u, v) _jit_allocar(_jit,u,v)
|
||||
jit_code_allocai, jit_code_allocar,
|
||||
|
@ -950,6 +952,7 @@ extern void _jit_putargi(jit_state_t*, jit_word_t, jit_node_t*);
|
|||
|
||||
extern void _jit_prepare(jit_state_t*);
|
||||
extern void _jit_ellipsis(jit_state_t*);
|
||||
extern void _jit_va_push(jit_state_t*, jit_gpr_t);
|
||||
extern void _jit_pushargr(jit_state_t*, jit_gpr_t);
|
||||
extern void _jit_pushargi(jit_state_t*, jit_word_t);
|
||||
extern void _jit_finishr(jit_state_t*, jit_gpr_t);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue