2011-12-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Dec 2011 14:37:19 +0000 (14:37 +0000)
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Dec 2011 14:37:19 +0000 (14:37 +0000)
PR target/50395
* config/s390/s390.c (s390_mainpool_finish): Emit the jump over
the literal pool as jump insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182116 138bc75d-0d04-0410-961f-82ee72b054a4

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

index b883173..ee1b698 100644 (file)
@@ -1,3 +1,9 @@
+2011-12-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       PR target/50395
+       * config/s390/s390.c (s390_mainpool_finish): Emit the jump over
+       the literal pool as jump insn.
+
 2011-12-08  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/49772
index ffca91a..67cdfb4 100644 (file)
@@ -6476,7 +6476,8 @@ s390_mainpool_finish (struct constant_pool *pool)
       rtx pool_end = gen_label_rtx ();
 
       insn = gen_main_base_31_large (base_reg, pool->label, pool_end);
-      insn = emit_insn_after (insn, pool->pool_insn);
+      insn = emit_jump_insn_after (insn, pool->pool_insn);
+      JUMP_LABEL (insn) = pool_end;
       INSN_ADDRESSES_NEW (insn, -1);
       remove_insn (pool->pool_insn);