diff options
author | Richard Guenther <rguenther@suse.de> | 2011-09-08 13:00:23 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-09-08 13:00:23 +0000 |
commit | 996e1de5e6bced0c6b6b0cbacee11ccc720ccdf4 (patch) | |
tree | bcaff4692c5de5b68874b434da9ce5fdf5834598 /gcc/testsuite/gcc.dg/errno-1.c | |
parent | c22c0db26ad16673415d7523781fcf80c8e545ba (diff) | |
download | gcc-996e1de5e6bced0c6b6b0cbacee11ccc720ccdf4.zip gcc-996e1de5e6bced0c6b6b0cbacee11ccc720ccdf4.tar.gz gcc-996e1de5e6bced0c6b6b0cbacee11ccc720ccdf4.tar.bz2 |
re PR tree-optimization/19831 (Missing DSE/malloc/free optimization)
2011-09-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/19831
* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Also
skip builtins with vdefs that do not really store something.
(propagate_necessity): For calls to free that we can associate
with an allocation function do not mark the freed pointer
definition necessary.
(eliminate_unnecessary_stmts): Remove a call to free if
the associated call to an allocation function is not necessary.
* gcc.dg/tree-ssa/pr19831-1.c: New testcase.
* gcc.dg/tree-ssa/pr19831-2.c: Likewise.
* gcc.dg/tree-ssa/pr19831-3.c: Likewise.
* gcc.dg/errno-1.c: Adjust.
From-SVN: r178687
Diffstat (limited to 'gcc/testsuite/gcc.dg/errno-1.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/errno-1.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/testsuite/gcc.dg/errno-1.c b/gcc/testsuite/gcc.dg/errno-1.c index d0365be..295deef 100644 --- a/gcc/testsuite/gcc.dg/errno-1.c +++ b/gcc/testsuite/gcc.dg/errno-1.c @@ -6,7 +6,7 @@ int main() { - void *p; + void * volatile p; errno = 0; p = malloc (-1); if (errno != 0) |