diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-07-24 12:01:31 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-07-24 12:01:31 +0000 |
commit | a0792f1ef98b4610cc0a20de07c5f891e4c345a1 (patch) | |
tree | e6e7fc2e41654412dd63c27c2a029de05556c32d | |
parent | 4020f31143a3f569d4383c9c4dc1deabcafc985a (diff) | |
download | gcc-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/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/torture/pr43879_1.c | 2 | ||||
-rw-r--r-- | gcc/tree-ssa-structalias.c | 6 |
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; |