Handle recursive restrict in function parameter
authorTom de Vries <tom@codesourcery.com>
Wed, 4 Nov 2015 14:18:43 +0000 (14:18 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Wed, 4 Nov 2015 14:18:43 +0000 (14:18 +0000)
commit7da5eaa09b6685d90da4271af9a1410aea231fb0
treef051827ec3e48c8f18fd51a45e5498be1c22330f
parent7b0a0ee25fb5b2007aa4d93d0f9557de2f512bd8
Handle recursive restrict in function parameter

2015-11-04  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/67742
* tree-ssa-structalias.c (struct fieldoff): Add restrict_pointed_type
field.
(push_fields_onto_fieldstack): Handle restrict_pointed_type field.
(create_variable_info_for_1): Add and handle handle_param parameter.
Add restrict handling.
(create_variable_info_for): Call create_variable_info_for_1 with extra
arg.
(make_param_constraints): Drop restrict_name parameter.  Ignore
vi->only_restrict_pointers.
(intra_create_variable_infos): Call create_variable_info_for_1 with
extra arg.  Remove restrict handling.  Call make_param_constraints with
one less arg.

* gcc.dg/tree-ssa/restrict-7.c: New test.
* gcc.dg/tree-ssa/restrict-8.c: New test.

From-SVN: r229755
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/restrict-7.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/restrict-8.c [new file with mode: 0644]
gcc/tree-ssa-structalias.c