[ 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 <ebotca...@adacore.com>
* 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