This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: A bit of vector extension documentation



On Friday, September 28, 2001, at 04:32  AM, Richard Henderson wrote:

> On Fri, Sep 28, 2001 at 10:00:05AM +0200, Daniel Egger wrote:
>> Although being able to hack OO languages like C++ and Java
>> I prefer C for my daily work and it's not acceptable for
>> some project to introduce C++ - especially for the sole purpose
>> of only being compilable with most recent GCC versions and
>> C++ frontend;
>
> Judicious local use of macros or static inline functions can
> rid you of some of the uglier "__builtin" parts.
>
>> ... though you clearly demonstrate what I would expect
>> to have in the gcc compilersuite somewhere in a templateized
>> version for general use.
>
> Yes, we should definitely distribute something of the sort.
>
>> For the future I'd expect to have something like a heuristic that
>> figures out that loops are trying to do some operations on MD that
>> is parallelizable and generate good SIMD code for it ...
>
> This is on the wish list.  But even if someone were to start on
> it now, I can't see it being complete for at least a year.  Some
> of the prerequisites are being worked on though -- see the AST
> branch.
>
A year, eh?
I actually have it half-done (I only did it for integer calculations), 
and working (though not thoroughly tested).
It's based on the algorithms in the paper "Exploiting superword level 
parallelism with multimedia instruction sets"
http://www.acm.org/pubs/citations/proceedings/pldi/349299/p145-larsen/

It's not tricky at all to do, it just requires proper dependence and 
alignment analysis.

I'll happily hand it off to someone who wants to complete it.

>
> r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]