summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2014-07-24 12:01:31 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2014-07-24 12:01:31 +0000
commita0792f1ef98b4610cc0a20de07c5f891e4c345a1 (patch)
treee6e7fc2e41654412dd63c27c2a029de05556c32d
parent4020f31143a3f569d4383c9c4dc1deabcafc985a (diff)
downloadgcc-a0792f1ef98b4610cc0a20de07c5f891e4c345a1.tar.gz
2014-07-24 Richard Biener <rguenther@suse.de>
PR ipa/61823 * tree-ssa-structalias.c (create_variable_info_for_1): Use varpool_get_constructor. (create_variable_info_for): Likewise. * gcc.dg/torture/pr43879_1.c: Add -fno-inline. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212980 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/torture/pr43879_1.c2
-rw-r--r--gcc/tree-ssa-structalias.c6
4 files changed, 16 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b17476401d1..f36f2459aca 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2014-07-24 Richard Biener <rguenther@suse.de>
+
+ PR ipa/61823
+ * tree-ssa-structalias.c (create_variable_info_for_1):
+ Use varpool_get_constructor.
+ (create_variable_info_for): Likewise.
+
2014-07-24 Jiong Wang <jiong.wang@arm.com>
* config/aarch64/aarch64.c (aarch64_expand_epilogue): Don't
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 85df44fab80..ae5dd749e75 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2014-07-24 Richard Biener <rguenther@suse.de>
+
+ PR ipa/61823
+ * gcc.dg/torture/pr43879_1.c: Add -fno-inline.
+
2014-07-24 Andreas Schwab <schwab@suse.de>
* lib/target-supports.exp (check_effective_target_arm_nothumb):
diff --git a/gcc/testsuite/gcc.dg/torture/pr43879_1.c b/gcc/testsuite/gcc.dg/torture/pr43879_1.c
index 151a184cb19..9c9e2ca8882 100644
--- a/gcc/testsuite/gcc.dg/torture/pr43879_1.c
+++ b/gcc/testsuite/gcc.dg/torture/pr43879_1.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-fipa-pta" } */
+/* { dg-options "-fipa-pta -fno-inline" } */
/* { dg-additional-sources "pr43879_2.c" } */
void bar(int c)
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 31dbec04945..662fa24b661 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -5671,7 +5671,7 @@ create_variable_info_for_1 (tree decl, const char *name)
in IPA mode. Else we'd have to parse arbitrary initializers. */
&& !(in_ipa_mode
&& is_global_var (decl)
- && DECL_INITIAL (decl)))
+ && varpool_get_constructor (varpool_get_node (decl))))
{
fieldoff_s *fo = NULL;
bool notokay = false;
@@ -5797,13 +5797,13 @@ create_variable_info_for (tree decl, const char *name)
/* If this is a global variable with an initializer and we are in
IPA mode generate constraints for it. */
- if (DECL_INITIAL (decl)
+ if (varpool_get_constructor (vnode)
&& vnode->definition)
{
auto_vec<ce_s> rhsc;
struct constraint_expr lhs, *rhsp;
unsigned i;
- get_constraint_for_rhs (DECL_INITIAL (decl), &rhsc);
+ get_constraint_for_rhs (varpool_get_constructor (vnode), &rhsc);
lhs.var = vi->id;
lhs.offset = 0;
lhs.type = SCALAR;