From: notaz Date: Mon, 9 Sep 2013 00:55:42 +0000 (+0300) Subject: add fixup for uncompressed jumptable X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=590d780f20871b29fdc803bd2c74b046fd2d0f28;p=cyclone68000.git add fixup for uncompressed jumptable --- diff --git a/.gitignore b/.gitignore index ef3db36..59a1e23 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ cyclone_gen Cyclone.s cscope.out tags +tests/test_misc2.bin diff --git a/Main.cpp b/Main.cpp index 9ef8a2b..13efac2 100644 --- a/Main.cpp +++ b/Main.cpp @@ -306,7 +306,12 @@ static void PrintFramework() ot(" bx lr\n"); ltorg(); #else - ot(";@ do nothing\n"); + ot(";@ fix final jumptable entries\n"); + ot(" ldr r12,=CycloneJumpTab\n"); + ot(" add r12,r12,#0x10000*4\n"); + ot(" ldr r0,[r12,#-3*4]\n"); + ot(" str r0,[r12,#-2*4]\n"); + ot(" str r0,[r12,#-1*4]\n"); ot(" bx lr\n"); #endif ot("\n");