On 11 June 2012 21:10, Richard Henderson <r...@redhat.com> wrote: > On 2012-06-11 08:46, Ramana Radhakrishnan wrote: >> I will also point out that this implementation actually makes >> things worse at -O0 given we don't constant propagate the mask into >> the VEC_PERM_EXPR which is actually a regression compared to the >> current state of the art (yes at O0 but I'm sure someone somewhere >> will care about that.) > > Is there any good reason to generate the _maskN variables, > rather than using the { } constant in the __builtin_shuffle > call directly?
No good reason - I had tried that when I started off but realize from my git log that I was missing a cast in that generator when I tried that approach. It shouldn't be too hard to change it around in that form. That however doesn't seem to . I could generate the masks with appropriate casts to unsigned variants instead.That doesn't seem to make a difference either. regards, Ramana