guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 284/437: ARM: Do not emit a nop stack adjust instruction


From: Andy Wingo
Subject: [Guile-commits] 284/437: ARM: Do not emit a nop stack adjust instruction.
Date: Mon, 2 Jul 2018 05:14:37 -0400 (EDT)

wingo pushed a commit to branch lightning
in repository guile.

commit 6726b2b8f5167043a1586518440c2d2effe17482
Author: pcpa <address@hidden>
Date:   Sat Apr 5 17:14:04 2014 -0300

    ARM: Do not emit a nop stack adjust instruction.
    
        lib/jit_arm-cpu.c: Only adjust stack pointer in prolog if
        need stack space, that is, do not emit a nop instruction
        subtracting zero from the stack pointer.
---
 ChangeLog         | 6 ++++++
 lib/jit_arm-cpu.c | 3 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index f8f6cfd..936106b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-04-05 Paulo Andrade <address@hidden>
+
+       lib/jit_arm-cpu.c: Only adjust stack pointer in prolog if
+       need stack space, that is, do not emit a nop instruction
+       subtracting zero from the stack pointer.
+
 2014-04-04 Paulo Andrade <address@hidden>
 
        * lib/jit_disasm.c: Correct a crash in the doc/printf example
diff --git a/lib/jit_arm-cpu.c b/lib/jit_arm-cpu.c
index c0419c3..08db893 100644
--- a/lib/jit_arm-cpu.c
+++ b/lib/jit_arm-cpu.c
@@ -3725,7 +3725,8 @@ _prolog(jit_state_t *_jit, jit_node_t *node)
            PUSH(0x3ff|(1<<_FP_REGNO)|(1<<_LR_REGNO));
     }
     movr(_FP_REGNO, _SP_REGNO);
-    subi(_SP_REGNO, _SP_REGNO, _jitc->function->stack);
+    if (_jitc->function->stack)
+       subi(_SP_REGNO, _SP_REGNO, _jitc->function->stack);
 }
 
 static void



reply via email to

[Prev in Thread] Current Thread [Next in Thread]