aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/pa/pa.c10
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 36588ee..56b1d93 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-07-23 Giovanni Bajo <giovannibajo@libero.it>
+
+ PR target/22577
+ * config/pa/pa.c (reloc_needed): Updated for VECs inside CONSTRUCTOR.
+
2005-07-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (C_TREE_H): Update dependencies.
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index b354ab0..ffe6708 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -1998,10 +1998,12 @@ reloc_needed (tree exp)
case CONSTRUCTOR:
{
- register tree link;
- for (link = CONSTRUCTOR_ELTS (exp); link; link = TREE_CHAIN (link))
- if (TREE_VALUE (link) != 0)
- reloc |= reloc_needed (TREE_VALUE (link));
+ tree value;
+ unsigned HOST_WIDE_INT ix;
+
+ FOR_EACH_CONSTRUCTOR_VALUE (CONSTRUCTOR_ELTS (exp), ix, value)
+ if (value)
+ reloc |= reloc_needed (value);
}
break;