On 6/18/07, Dorit Nuzman <[EMAIL PROTECTED]> wrote:
"Daniel Berlin" <[EMAIL PROTECTED]> wrote on 17/06/2007 18:18:19:
...
>
> The whole purpose of SLP was to enable straight line code
> vectorization outside of loops.
I wouldn't say that's the whole purpose of SLP.
Okay, that is probably a stretch on my part.
It is, however (IMHO), fair to say it's whole purpose was to enable
vectorization based on basic blocks rather than loops, which in turn
enables it to vectorize straight line code.
However, as far as I know (also from talking with the
SLP authors) pretty much all the opportunities they had found at the time
were in loops.
I can hand you more than the testcases i've given so far. There is
tons of code out there that would benefit from straight line
vectorization. In fact, we have some that gets written in loop form
right now just so it gets vectorized!
we'll have to have a much better cost model before we start packing random
sequences of stmts out of loops.
This i'm happy to agree on, but it does not change that I am
disappointed that you have tied the SLP implementation to loops so
heavily.
> Simply because you can't find cases in SPEC2000 doesn't mean it's not
useful.
I don't know where you're taking this from. SPEC2000 is really not so
interesting vectorization wise, inside or outside loops.
This was from some private mails I received about how it is not useful
for "benchmarks".
HTH,
Dan