lightning.git - Portable just-in-time compiler library

index : lightning.git
Portable just-in-time compiler library
summary refs log tree commit diff
path: root/lib/jit_mips.c
diff options
context:
space:
mode:
authorpcpa <paulo.cesar.pereira.de.andrade@gmail.com>2012年12月12日 22:59:52 -0200
committerpcpa <paulo.cesar.pereira.de.andrade@gmail.com>2012年12月12日 22:59:52 -0200
commit0b89a17ca2709fbd4765a9758b73e07b6b5d9a52 (patch)
treea31b84b195ce8bebbf76d3170eba38e50bf26e26 /lib/jit_mips.c
parenta04df966c056513cdd85086e2c85b491bad55f3c (diff)
downloadlightning-0b89a17ca2709fbd4765a9758b73e07b6b5d9a52.tar.gz
Add jit_ellipis and remove jit_prepare argument.
* include/lightning.h, lib/jit_arm.c, lib/jit_mips.c, lib/jit_ppc.c, lib/jit_x86.c, lib/lightning.c: Change jit_prepare to no longer receive an argument. If receiving an argument, it should be an ABI specifier, not a boolean if varargs or not, and add the new jit_ellipsis call, to specify where the ellipsis is in the C prototype of the function being called. Note that currently it is not supported to define varargs functions and it will be ignored if calling jit_ellipsis not in a prepare/finish* block, but this should be addressed. * check/allocai.tst, check/alu_add.tst, check/alu_and.tst, check/alu_com.tst, check/alu_div.tst, check/alu_lsh.tst, check/alu_mul.tst, check/alu_neg.tst, check/alu_or.tst, check/alu_rem.tst, check/alu_rsh.tst, check/alu_sub.tst, check/alu_xor.tst, check/alux_add.tst, check/alux_sub.tst, check/bp.tst, check/branch.tst, check/cvt.tst, check/divi.tst, check/fib.tst, check/ldsti.tst, check/ldstr-c.tst, check/ldstr.tst, check/ldstxi-c.tst, check/ldstxi.tst, check/ldstxr-c.tst, check/ldstxr.tst, check/rpn.tst, check/lightning.c: Update for the change to jit_prepare and addition of jit_ellipsis.
Diffstat (limited to 'lib/jit_mips.c')
-rw-r--r--lib/jit_mips.c 6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/jit_mips.c b/lib/jit_mips.c
index f365e3c..7b6f99d 100644
--- a/lib/jit_mips.c
+++ b/lib/jit_mips.c
@@ -150,6 +150,12 @@ _jit_prolog(jit_state_t *_jit)
jit_regset_new(_jit->function->regset);
}
+void
+_jit_ellipsis(jit_state_t *_jit)
+{
+ _jit->function->call.kind = jit_call_varargs;
+}
+
jit_int32_t
_jit_allocai(jit_state_t *_jit, jit_int32_t length)
{
generated by cgit v1.2.3 (git 2.25.1) at 2025年10月02日 15:40:15 +0000

AltStyle によって変換されたページ (->オリジナル) /