diff options
author | Jeff Law <law@redhat.com> | 2019-07-23 14:05:48 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2019-07-23 14:05:48 -0600 |
commit | d8e54c6203f4134b3a9ee7311f885a2dcf476673 (patch) | |
tree | 17737ee21403cec459220071319c67afb074fdae /gcc | |
parent | 40768ee0bc9965d109692f884f8588626e01e3fe (diff) | |
download | gcc-d8e54c6203f4134b3a9ee7311f885a2dcf476673.zip gcc-d8e54c6203f4134b3a9ee7311f885a2dcf476673.tar.gz gcc-d8e54c6203f4134b3a9ee7311f885a2dcf476673.tar.bz2 |
Add PR markers to recent DSE changes. And...
PR tree-optimization/86061
* gcc.dg/tree-ssa/pr86061.c: New test.
From-SVN: r273745
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 1 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr86061.c | 20 |
3 files changed, 27 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d405921..c6c0f4a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -400,6 +400,7 @@ 2019-07-19 Jeff Law <law@redhat.com> + PR tree-optimization/86061 * tree-ssa-dse.c (initialize_ao_ref_for_dse): Handle strncpy. Drop some trivial dead code. (maybe_trim_memstar_call): Handle strncpy. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8e6b026..14fe6b9 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-07-23 Jeff Law <law@redhat.com> + + PR tree-optimization/86061 + * gcc.dg/tree-ssa/pr86061.c: New test. + 2019-07-23 Richard Biener <rguenther@suse.de> PR tree-optimization/83518 @@ -176,6 +181,7 @@ 2019-07-19 Jeff Law <law@redhat.com> + PR tree-optimization/86061 * gcc.dg/tree-ssa/ssa-dse-37.c: New test. * gcc.dg/tree-ssa/ssa-dse-38.c: New test. diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr86061.c b/gcc/testsuite/gcc.dg/tree-ssa/pr86061.c new file mode 100644 index 0000000..f2b0792 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr86061.c @@ -0,0 +1,20 @@ +/* { dg-options "-O2 -fdump-tree-dse-details -fno-tree-fre" } */ + + +struct S { int i; char n[128]; int j; }; + +void f (char*); + +void g (struct S *p) +{ + char a[sizeof p->n + 1]; + + __builtin_memset (a, 0, sizeof a); // dead store, can be eliminated + + __builtin_strncpy (a, p->n, sizeof a - 1); + a[sizeof a - 1] = '\0'; + + f (a); +} + +/* { dg-final { scan-tree-dump-times "Deleted dead call" 1 "dse1" } } */ |