David Edelsohn wrote:
>       -ftree-loop-linear enables a number of features and
> transformations.  Which part, exactly, is experimental?  You are quoting
> from the documentation for the option, but Dan may be referring to a
> particular transformation.  I thought the failure and algorithm
> correctness was related to creating perfect loop nests used by other
> transformations, not all of the tree loop linear.
> 
>       I think this discussion is losing a lot in the summary.

I did provide nearly all of the information that I had from Dan, but
it's entirely possible that the original conversation failed to convey
the full complexity of the situation to me. :-)

Dan wrote (and gave me permission to repost):

> It only happens with -ftree-loop-linear, a flag we have marked as 
> experimental.
> IE it is not something that users will hit without adding extra flags to 
> their compiler.

I don't see that -ftree-loop-linear is marked as experimental, so
something seems to be confused about this situation.  That quote
suggested to me that the entire option was experimental.

However, Dan also wrote:

> I can fix almost all of these bugs by simply removing the perfect nest 
> conversion code, 

which confirms your suggestion that it's this one transformation that's
experimental.

However, we still have the same problems as from my original email:

* We have an option which is (at least partially) experimental and
known-dangerous, but we're not conveying this to users, and:

* We need a general strategy for dealing with this situation in future,
independent of -ftree-loop-linear.

Possibly, we could solve this specific issue by creating a separate
option to enable the problematic transformations -- but I'd still like
to have a general strategy for dealing with such options, including the
one that would be created to enable the perfect nest conversion code.

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713

Reply via email to