aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--i386-gen.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/i386-gen.c b/i386-gen.c
index c845a25..9aad2e1 100644
--- a/i386-gen.c
+++ b/i386-gen.c
@@ -443,11 +443,18 @@ void gfunc_epilog(void)
*func_sub_sp_ptr = (-loc + 3) & -4;
}
+/* generate a jump to a label */
int gjmp(int t)
{
return psym(0xe9, t);
}
+/* generate a jump to a fixed address */
+void gjmp_addr(int a)
+{
+ oad(0xe9, a - ind - 5);
+}
+
/* generate a test. set 'inv' to invert test. Stack entry is popped */
int gtst(int inv, int t)
{