i386.c (legitimize_pic_address): Fix splitting of PLUS with huge offset.
authorJan Hubicka <jh@suse.cz>
Sat, 18 Sep 2004 07:29:06 +0000 (09:29 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sat, 18 Sep 2004 07:29:06 +0000 (07:29 +0000)
* i386.c (legitimize_pic_address): Fix splitting of PLUS with
huge offset.

From-SVN: r87697

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

index 06a6e53a1411baa98e9e1d5e20b3bd6c86fed594..9fa0b9b7cedef2f05745f9a0004b2b90c6920f8f 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-18  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (legitimize_pic_address): Fix splitting of PLUS with
+       huge offset.
+
 2004-09-18  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove.
index 57e785d003bbefb5961f26048b6cb631c174807a..09db92e79714df7557023122ecbebb79d95a7795 100644 (file)
@@ -5405,7 +5405,7 @@ legitimize_pic_address (rtx orig, rtx reg)
                {
                  if (INTVAL (op1) < -16*1024*1024
                      || INTVAL (op1) >= 16*1024*1024)
-                   new = gen_rtx_PLUS (Pmode, op0, force_reg (Pmode, op1));
+                   new = gen_rtx_PLUS (Pmode, force_reg (Pmode, op0), op1);
                }
            }
          else