diff options
author | Richard Biener <rguenth@gcc.gnu.org> | 2010-03-15 13:05:05 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-03-15 13:05:05 +0000 |
commit | 610de68dbe2c55bad224111693e12cdb00aa87b8 (patch) | |
tree | 22a8bc701235da3d07736bdd2f28c95976de8b73 | |
parent | 932e2e64b1f6bcdca46f9a65362a91e4147e3435 (diff) | |
download | gcc-610de68dbe2c55bad224111693e12cdb00aa87b8.zip gcc-610de68dbe2c55bad224111693e12cdb00aa87b8.tar.gz gcc-610de68dbe2c55bad224111693e12cdb00aa87b8.tar.bz2 |
re PR tree-optimization/43317 (ICE: Segmentation fault with -fipa-struct-reorg -g)
2010-03-15 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43317
* ipa-struct-reorg.c (create_new_general_access): Update stmt.
* gcc.dg/pr43317.c: New testcase.
From-SVN: r157457
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/ipa-struct-reorg.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr43317.c | 15 |
4 files changed, 27 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fcb5452..bd07364 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,6 +1,11 @@ +2010-03-15 Richard Guenther <rguenther@suse.de> + + PR tree-optimization/43317 + * ipa-struct-reorg.c (create_new_general_access): Update stmt. + 2010-03-15 Martin Jambor <mjambor@suse.cz> - PR tree/optimization/43141 + PR tree-optimization/43141 * tree-sra.c (create_abstract_origin): New function. (modify_function): Call create_abstract_origin. diff --git a/gcc/ipa-struct-reorg.c b/gcc/ipa-struct-reorg.c index e0336aa..24b42e3 100644 --- a/gcc/ipa-struct-reorg.c +++ b/gcc/ipa-struct-reorg.c @@ -1389,6 +1389,7 @@ create_new_general_access (struct access_site *acc, d_str str) for now just reset all debug stmts referencing objects that have been peeled. */ gimple_debug_bind_reset_value (stmt); + update_stmt (stmt); break; default: diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f70b5e6..65c465f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-03-15 Richard Guenther <rguenther@suse.de> + + PR tree-optimization/43317 + * gcc.dg/pr43317.c: New testcase. + 2010-03-14 Uros Bizjak <ubizjak@gmail.com> * g++.dg/abi/packed1.C: Expect warning on the alpha*-*-*. diff --git a/gcc/testsuite/gcc.dg/pr43317.c b/gcc/testsuite/gcc.dg/pr43317.c new file mode 100644 index 0000000..3ee3ed5 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr43317.c @@ -0,0 +1,15 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fipa-struct-reorg -fwhole-program -fipa-type-escape -g" } */ + +extern void *malloc(__SIZE_TYPE__); + +struct S { + int i; +}; + +int main(int argc, char *argv[]) +{ + int i = argc; + struct S *p = malloc(sizeof (struct S)); + return p[i].i; +} |