Commit 420ee75d by Richard Biener Committed by Richard Biener

re PR tree-optimization/89509 (restrict doesnt work with subfield accesses)

2019-05-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/89509
	* tree-ssa-structalias.c (compute_dependence_clique): Look
	at the first subvar when determining whether it is restrict.

	* gcc.dg/torture/restrict-8.c: New testcase.

From-SVN: r270799
parent 5fe6af6d
2019-05-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/89509
* tree-ssa-structalias.c (compute_dependence_clique): Look
at the first subvar when determining whether it is restrict.
2019-05-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/90273
* tree-ssa-dce.c (eliminate_unnecessary_stmts): Eliminate
useless debug stmts.
......
2019-05-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/89509
* gcc.dg/torture/restrict-8.c: New testcase.
2019-05-02 Iain Sandoe <iain@sandoe.co.uk>
* gcc.dg/tree-prof/section-attr-1.c: Update scan-asm regex
......
/* { dg-do compile } */
/* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
/* { dg-options "-fdump-tree-fre1" } */
struct S { int i; void *p; int j; };
int
foo (struct S * __restrict p, int *q, int flag)
{
int *x = &p->j;
if (flag)
x = &p->i;
*q = 1;
*x = 2;
return *q;
}
/* { dg-final { scan-tree-dump "return 1;" "fre1" } } */
......@@ -7588,9 +7588,12 @@ compute_dependence_clique (void)
EXECUTE_IF_SET_IN_BITMAP (vi->solution, 0, j, bi)
{
varinfo_t oi = get_varinfo (j);
if (oi->head != j)
oi = get_varinfo (oi->head);
if (oi->is_restrict_var)
{
if (restrict_var)
if (restrict_var
&& restrict_var != oi)
{
if (dump_file && (dump_flags & TDF_DETAILS))
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment