]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR bootstrap/57609 (S/390 ESA mode bootstrap failure since r197266)
authorAndreas Krebbel <Andreas.Krebbel@de.ibm.com>
Tue, 18 Jun 2013 08:59:46 +0000 (08:59 +0000)
committerAndreas Krebbel <krebbel@gcc.gnu.org>
Tue, 18 Jun 2013 08:59:46 +0000 (08:59 +0000)
2013-06-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR target/57609
* config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
with next_active_insn.

From-SVN: r200164

gcc/ChangeLog
gcc/config/s390/s390.c

index 649d9b98731d506939c8da4cae6126b22f4810b3..f356c4d75deb338cedcd842711ac5336e2c4b3e2 100644 (file)
@@ -1,3 +1,9 @@
+2013-06-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       PR target/57609
+       * config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
+       with next_active_insn.
+
 2013-06-18  Alan Modra  <amodra@gmail.com>
 
        * config/rs6000/rs6000.h (enum data_align): New.
index 358345a4437a2328b8d48223daf0e27c468f7862..837308b4d3f8bbf6f4a2aacf0335d2023a9801f4 100644 (file)
@@ -7023,7 +7023,7 @@ s390_chunkify_start (void)
       if (LABEL_P (insn)
          && (LABEL_PRESERVE_P (insn) || LABEL_NAME (insn)))
        {
-         rtx vec_insn = next_real_insn (insn);
+         rtx vec_insn = next_active_insn (insn);
          if (! vec_insn || ! JUMP_TABLE_DATA_P (vec_insn))
            bitmap_set_bit (far_labels, CODE_LABEL_NUMBER (insn));
        }
@@ -7054,7 +7054,7 @@ s390_chunkify_start (void)
            {
              /* Find the jump table used by this casesi jump.  */
              rtx vec_label = XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0);
-             rtx vec_insn = next_real_insn (vec_label);
+             rtx vec_insn = next_active_insn (vec_label);
              if (vec_insn && JUMP_TABLE_DATA_P (vec_insn))
                {
                  rtx vec_pat = PATTERN (vec_insn);
@@ -7085,11 +7085,20 @@ s390_chunkify_start (void)
 
   /* Insert base register reload insns at every far label.  */
 
+  if (dump_file)
+    {
+      fprintf (dump_file, "Function: %s\n", current_function_name ());
+      fprintf (dump_file, "far labels:\n");
+    }
+
   for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
     if (LABEL_P (insn)
         && bitmap_bit_p (far_labels, CODE_LABEL_NUMBER (insn)))
       {
        struct constant_pool *pool = s390_find_pool (pool_list, insn);
+       if (dump_file)
+         print_rtx (insn);
+
        if (pool)
          {
            rtx new_insn = gen_reload_base (cfun->machine->base_reg,