OSDN Git Service

2007-09-10 Andreas Krebbel <krebbel1@de.ibm.com>
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 10 Sep 2007 13:10:57 +0000 (13:10 +0000)
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 10 Sep 2007 13:10:57 +0000 (13:10 +0000)
* config/s390/s390.c (s390_dump_pool): Create copy of constant
pool entries since they might hold values that must not be shared.

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

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

index e6868fe..69703a7 100644 (file)
@@ -1,3 +1,8 @@
+2007-09-10  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * config/s390/s390.c (s390_dump_pool): Create copy of constant
+       pool entries since they might hold values that must not be shared.
+
 2007-09-10  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/33369
index aa6db1f..c4860e5 100644 (file)
@@ -5600,7 +5600,7 @@ s390_dump_pool (struct constant_pool *pool, bool remote_label)
     for (c = pool->constants[i]; c; c = c->next)
       {
        /* Convert UNSPEC_LTREL_OFFSET unspecs to pool-relative references.  */
-       rtx value = c->value;
+       rtx value = copy_rtx (c->value);
        if (GET_CODE (value) == CONST
            && GET_CODE (XEXP (value, 0)) == UNSPEC
            && XINT (XEXP (value, 0), 1) == UNSPEC_LTREL_OFFSET