From 1ee3320a0b86e1d34c2b52fc8d4b4c760978c6f4 Mon Sep 17 00:00:00 2001
From: Ting-Wei Lan <lantw44@gmail.com>
Date: Thu, 31 Dec 2015 20:49:13 +0800
Subject: Immediate is only safe to when the number is <= 4096

---
 src/code-generation.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'src/code-generation.c')

diff --git a/src/code-generation.c b/src/code-generation.c
index 1510898..59e47ad 100644
--- a/src/code-generation.c
+++ b/src/code-generation.c
@@ -155,7 +155,7 @@ static void generate_block(
             current_offset = generate_local_variable(local, state, current_offset);
         offset_diff = current_offset - orig_offset;
         if (offset_diff > 0) {
-            if (offset_diff >= 65536) {
+            if (offset_diff > 4096) {
                 CcmmcTmp *tmp = ccmmc_register_alloc(state->reg_pool);
                 const char *reg_name = ccmmc_register_lock(state->reg_pool, tmp);
                 fprintf(state->asm_output,
@@ -175,7 +175,7 @@ static void generate_block(
             generate_statement(stmt, state, current_offset);
     }
     if (offset_diff > 0) {
-        if (offset_diff >= 65536) {
+        if (offset_diff > 4096) {
             CcmmcTmp *tmp = ccmmc_register_alloc(state->reg_pool);
             const char *reg_name = ccmmc_register_lock(state->reg_pool, tmp);
             fprintf(state->asm_output,
-- 
cgit