(output_addr_const): Call simplify_subtraction.
authorRichard Stallman <rms@gnu.org>
Mon, 12 Oct 1992 08:23:25 +0000 (08:23 +0000)
committerRichard Stallman <rms@gnu.org>
Mon, 12 Oct 1992 08:23:25 +0000 (08:23 +0000)
From-SVN: r2403

gcc/final.c

index d82d553..49df7b0 100644 (file)
@@ -2278,6 +2278,12 @@ output_addr_const (file, x)
       break;
 
     case MINUS:
+      /* Avoid outputting things like x-x or x+5-x,
+        since some assemblers can't handle that.  */
+      x = simplify_subtraction (x);
+      if (GET_CODE (x) != MINUS)
+       goto restart;
+
       output_addr_const (file, XEXP (x, 0));
       fprintf (file, "-");
       if (GET_CODE (XEXP (x, 1)) == CONST_INT