https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82488

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |trippels at gcc dot gnu.org

--- Comment #2 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
diff --git a/gcc/expr.c b/gcc/expr.c
index ee07de5aaa44..e9d8555c9452 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -4100,10 +4100,13 @@ fixup_args_size_notes (rtx_insn *prev, rtx_insn *last,
int end_args_size)
       if (STACK_GROWS_DOWNWARD)
        this_delta = -(unsigned HOST_WIDE_INT) this_delta;

-      args_size -= this_delta;
+      if (saw_unknown)
+       args_size = INT_MIN;
+      else
+       args_size -= this_delta;
     }

-  return saw_unknown ? INT_MIN : args_size;
+  return args_size;
 }

 #ifdef PUSH_ROUNDING

Reply via email to