re PR tree-optimization/79715 (hand-rolled strdup with unused result not eliminated)
gcc/testsuite/ChangeLog: PR tree-optimization/79715 * gcc.dg/pr79715.c: New test. From-SVN: r247440
This commit is contained in:
parent
a6c78ea303
commit
706eb1a70d
@ -1,3 +1,8 @@
|
||||
2017-05-01 Martin Sebor <msebor@redhat.com>
|
||||
|
||||
PR tree-optimization/79715
|
||||
* gcc.dg/pr79715.c: New test.
|
||||
|
||||
2017-05-01 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
PR testsuite/65941
|
||||
|
26
gcc/testsuite/gcc.dg/pr79715.c
Normal file
26
gcc/testsuite/gcc.dg/pr79715.c
Normal file
@ -0,0 +1,26 @@
|
||||
/* PR tree-optimization/79715 - hand-rolled strdup with unused result
|
||||
not eliminated
|
||||
{ dg-do compile }
|
||||
{ dg-options "-O2 -Wall -fdump-tree-optimized" } */
|
||||
|
||||
void f (const char *s)
|
||||
{
|
||||
unsigned n = __builtin_strlen (s) + 1;
|
||||
char *p = __builtin_malloc (n);
|
||||
__builtin_memcpy (p, s, n);
|
||||
__builtin_free (p);
|
||||
}
|
||||
|
||||
void g (const char *s)
|
||||
{
|
||||
unsigned n = __builtin_strlen (s) + 1;
|
||||
char *p = __builtin_malloc (n);
|
||||
__builtin_strcpy (p, s);
|
||||
__builtin_free (p);
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-not "free" "optimized" } }
|
||||
{ dg-final { scan-tree-dump-not "malloc" "optimized" } }
|
||||
{ dg-final { scan-tree-dump-not "memcpy" "optimized" } }
|
||||
{ dg-final { scan-tree-dump-not "strcpy" "optimized" } }
|
||||
{ dg-final { scan-tree-dump-not "strlen" "optimized" } } */
|
Loading…
Reference in New Issue
Block a user