[ cc gcc-patches ] On 23/10/15 18:40, Eric Botcazou wrote:
--- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -5887,7 +5887,10 @@ intra_create_variable_infos (struct function *fn)if (POINTER_TYPE_P (TREE_TYPE (t)) && TYPE_RESTRICT (TREE_TYPE (t))) - make_constraint_from_global_restrict (p, "PARM_RESTRICT"); + { + gcc_unreachable (); + make_constraint_from_global_restrict (p, "PARM_RESTRICT"); + } else { for (; p; p = vi_next (p)) ... to detect the 'type_contains_placeholder_p' case, but the assert did not trigger. Is it possible to add an ada testcase that triggers the 'type_contains_placeholder_p' case?Well, LTO testcases are painful to create and it's 3 years later... In any case, since: 2015-10-02 Eric Botcazou <[email protected]> * gcc-interface/ada-tree.h (DECL_RESTRICTED_ALIASING_P): New flag. * gcc-interface/decl.c (gnat_to_gnu_param): For parameters passed by reference but whose type isn't by-ref and whose mechanism hasn't been forced to by-ref, set the DECL_RESTRICTED_ALIASING_P flag directly on them instead of changing their type. * gcc-interface/trans.c (scan_rhs_r): New helper function. (independent_iterations_p): New predicate. (Loop_Statement_to_gnu): For a loop with an iteration scheme, set an ivdep pragma if the iterations are independent. the Ada compiler doesn't use restrict-qualified pointer types anymore so you can back out my change from 2012 if need be.
Sofar I didn't need to revert this change. But, are you saying here it's dead code? In that case, it might make sense to revert it anyway. Thanks, - Tom
