]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
emit-rtl.c (change_address): Don't abort if invalid address while reload is in progress.
authorRichard Kenner <kenner@gcc.gnu.org>
Wed, 4 Jul 2001 18:20:21 +0000 (14:20 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Wed, 4 Jul 2001 18:20:21 +0000 (14:20 -0400)
* emit-rtl.c (change_address): Don't abort if invalid address while
reload is in progress.

From-SVN: r43765

gcc/ChangeLog
gcc/emit-rtl.c

index 9283fa1badbd20d449daf46df01eaab1dc628278..de559fb5320f4db4393a65ceea5ff360ea6e26f3 100644 (file)
@@ -1,3 +1,8 @@
+Wed Jul  4 13:40:02 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * emit-rtl.c (change_address): Don't abort if invalid address while
+       reload is in progress.
+
 2001-07-04  Daniel Berlin  <dan@cgsoftware.com>
 
        * c-lex.c (cb_file_change): Pass line number to
        * toplev.h (debug_start_source_file): Add line number to
        parameters.
        
-       * dwarf2out.h (dwarf2out_start_source_file): Add line number to parameters.
+       * dwarf2out.h (dwarf2out_start_source_file): Add line number to
+       parameters.
 
        * dwarf2out.c (dwarf2out_start_source_file): Add line number to
        parameters.
        Output debug_macinfo data for starting file if requested. 
        (dwarf2out_end_source_file): Output debug_macinfo data for ending
        file if requested.
-       (dwarf2out_define): Output debug_macinfo data for defining a macro if requested.
+       (dwarf2out_define): Output debug_macinfo data for defining a macro
+       if requested.
        (dwarf2out_undef): Output debug_macinfo data for undefining a
        macro if requested.
        (DEBUG_MACINFO_SECTION): New. DWARF2 macro info section name.
index deca99b7459f6c8beb9f17689e8f8c322624fff7..107e75d4cd012f1dd9c583bb0a4260ef4b892d38 100644 (file)
@@ -1584,9 +1584,13 @@ change_address (memref, mode, addr)
   if (addr == 0)
     addr = XEXP (memref, 0);
 
-  /* If reload is in progress or has completed, ADDR must be valid.
-     Otherwise, we can call memory_address to make it valid.  */
-  if (reload_completed || reload_in_progress)
+  /* If reload is in progress, don't check for validity of the address since we
+     assume the caller knows what they are doing.  If reload has completed, the
+     address must be valid.  Otherwise, we call memory_address to make it
+     valid.  */
+  if (reload_in_progress)
+    ;
+  else if (reload_completed)
     {
       if (! memory_address_p (mode, addr))
        abort ();