arch-specific template code

Marc Glisse marc.glisse@inria.fr
Sat Sep 8 10:12:00 GMT 2012


On Sat, 8 Sep 2012, Paolo Carlini wrote:

> On 08/28/2012 06:02 PM, Marc Glisse wrote:
>> I can understand that, but it is nice to know exactly what is missing so we 
>> have a chance to get there eventually. __builtin_sqrt is a good example 
>> indeed. I thought masking was supposed to work (depending on what that 
>> means), although possibly only in C.
> Marc, I think it would be very nice to have a record of these missing 
> features / weaknesses of the vector extensions. Since you know the extensions 
> pretty well by now, could you please double check whether something is 
> missing from Bugzilla,

I think most of the features mentioned in this thread have a bugzilla 
entry.

PR 54400: horizontal add
PR 54408: sqrt
PR 54422: unaligned load/store
PR 54427: operator< and others in C++

I posted a patch for 54427 and a RFC/patch for 54400 on x86 about a week 
ago (no answer yet).

> possibly open a metabug, something like that?

Hmm, it isn't obvious what the topic of the meta-bug would be. There are 
front-end parts (like 54427, I also think some way to generate 
VEC_COND_EXPR (i.e. ?: for vectors) would be nice), middle-end and 
back-end parts (optimize those vector operations). I don't think "all 
vector-related PRs" would do. Maybe "vector extension enhancements for 
libstdc++"?

One obstacle that may appear is that some of the optimizations will 
require flags like -ffinite-math-only, which can make perfect sense for 
probabilities where you know the range of numbers, but maybe not all, and 
gcc's optimization attributes are not known for their reliability.

-- 
Marc Glisse



More information about the Libstdc++ mailing list