libguile/vm-i-system.c: workaround ice ssa corruption while compiling with option -g -O

While compiling with option -g -O, there was a ssa corruption:
..
Unable to coalesce ssa_names 48 and 3476 which are marked as MUST COALESCE.
sp_48(ab) and  sp_3476(ab)
guile-2.0.11/libguile/vm-engine.c: In function 'vm_debug_engine':
guile-2.0.11/libguile/vm.c:673:19: internal compiler error: SSA corruption
 #define VM_NAME   vm_debug_engine
                   ^
guile-2.0.11/libguile/vm-engine.c:39:1: note: in expansion of macro 'VM_NAME'
 VM_NAME (SCM vm, SCM program, SCM *argv, int nargs)
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
...

Tweak libguile/vm-i-system.c to add boundary value check to workaround it.

Upstream-Status: Pending

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
 libguile/vm-i-system.c | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c
--- a/libguile/vm-i-system.c
+++ b/libguile/vm-i-system.c
@@ -625,10 +625,22 @@ VM_DEFINE_INSTRUCTION (47, bind_optionals_shuffle, "bind-optionals/shuffle", 6,
   /* now shuffle up, from walk to ntotal */
   {
     scm_t_ptrdiff nshuf = sp - walk + 1, i;
-    sp = (fp - 1) + ntotal + nshuf;
-    CHECK_OVERFLOW ();
-    for (i = 0; i < nshuf; i++)
-      sp[-i] = walk[nshuf-i-1];
+    /* check the value of nshuf to workaround ice ssa corruption */
+    /* while compiling with -O -g */
+    if (nshuf > 0)
+    {
+      sp = (fp - 1) + ntotal + nshuf;
+      CHECK_OVERFLOW ();
+      for (i = 0; i < nshuf; i++)
+        sp[-i] = walk[nshuf-i-1];
+    }
+    else
+    {
+      sp = (fp - 1) + ntotal + nshuf;
+      CHECK_OVERFLOW ();
+      for (i = 0; i < nshuf; i++)
+        sp[-i] = walk[nshuf-i-1];
+    }
   }
   /* and fill optionals & keyword args with SCM_UNDEFINED */
   while (walk <= (fp - 1) + ntotal)
-- 
1.9.1

