re PR rtl-optimization/15717 (Error: can't resolve `L0' {*ABS* section} - `xx' {...
authorZdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
Tue, 8 Jun 2004 13:26:04 +0000 (15:26 +0200)
committerZdenek Dvorak <rakdver@gcc.gnu.org>
Tue, 8 Jun 2004 13:26:04 +0000 (13:26 +0000)
PR rtl-optimization/15717
* config/i386/i386.c (legitimate_constant_p): Do not allow
x - symbol_ref.

From-SVN: r82755

gcc/ChangeLog
gcc/config/i386/i386.c

index aec3ed2fc4e63ad39c92e487ecccb8488ada5c89..01846afd42f1607eba3af83ed770a5a9de9da65c 100644 (file)
@@ -1,3 +1,9 @@
+2004-06-08  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       PR rtl-optimization/15717
+       * config/i386/i386.c (legitimate_constant_p): Do not allow
+       x - symbol_ref.
+
 2004-06-08  Alexandre Oliva  <aoliva@redhat.com>
 
        * gimplify.c (copy_if_shared_r): Revert:
index d8775ade8ae161aca9c469a65750f2d418a94095..1ae82e82cab4a9be254a55dbce5fe85cc5cea141 100644 (file)
@@ -5823,7 +5823,8 @@ legitimate_constant_p (rtx x)
          && tls_symbolic_operand (XEXP (inner, 0), Pmode))
        return false;
 
-      if (GET_CODE (inner) == PLUS)
+      if (GET_CODE (inner) == PLUS
+         || GET_CODE (inner) == MINUS)
        {
          if (GET_CODE (XEXP (inner, 1)) != CONST_INT)
            return false;