sra: Do not create zero sized accesses (PR 93776)
authorMartin Jambor <mjambor@suse.cz>
Wed, 19 Feb 2020 10:13:52 +0000 (11:13 +0100)
committerMartin Jambor <mjambor@suse.cz>
Wed, 19 Feb 2020 10:15:30 +0000 (11:15 +0100)
commit51faf07cef9293af544bfacc7d0b320ab90d7d60
tree533e82edecf8fb0aaf3972966db494361c113dec
parent665c5bad168ab63629b29ed2ce08ed042c088dc2
sra: Do not create zero sized accesses  (PR 93776)

SRA can get a bit confused with zero-sized accesses like the one in
the testcase.  Since there is nothing in the access, nothing is
scalarized, but we can get order of the structures wrong, which the
verifier is not happy about.

Fixed by simply ignoring such accesses.

2020-02-19  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/93776
* tree-sra.c (create_access): Do not create zero size accesses.
(get_access_for_expr): Do not search for zero sized accesses.

testsuite/
* gcc.dg/tree-ssa/pr93776.c: New test.
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/pr93776.c [new file with mode: 0644]
gcc/tree-sra.c