Mercurial > pub > dyncall > dyncall
diff dyncallback/dyncall_args_mips.h @ 122:f63467916f98
- first draft of mips64 n64 callbacks, not everything working, though
author | cslag |
---|---|
date | Mon, 04 Jul 2016 01:11:08 +0200 |
parents | 9aa75a74614c |
children | f5577f6bf97a |
line wrap: on
line diff
--- a/dyncallback/dyncall_args_mips.h Mon Jul 04 01:03:27 2016 +0200 +++ b/dyncallback/dyncall_args_mips.h Mon Jul 04 01:11:08 2016 +0200 @@ -31,15 +31,21 @@ struct DCArgs { - /* Don't change order! */ -#if defined(DC__ABI_MIPS_O32) + /* Don't change order or types, laid out for asm code to fill in! */ +#if defined(DC__Arch_MIPS) && defined(DC__ABI_MIPS_O32) DCint freg_count; #else # define DCARGS_MIPS_NUM_IREGS 8 # define DCARGS_MIPS_NUM_FREGS 8 +# if defined(DC__Arch_MIPS) DCint ireg_data[DCARGS_MIPS_NUM_IREGS]; DCfloat freg_data[DCARGS_MIPS_NUM_FREGS]; struct { DCshort i; DCshort f; } reg_count; +# elif defined(DC__Arch_MIPS64) + DClonglong ireg_data[DCARGS_MIPS_NUM_IREGS]; + DCdouble freg_data[DCARGS_MIPS_NUM_FREGS]; + DClonglong reg_count; +# endif #endif DCuchar* stackptr; };