This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: more SIMD operations
- From: Dorit Naishlos <DORIT at il dot ibm dot com>
- To: Mads Lindstrøm <mads_lindstroem at yahoo dot dk>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 8 Dec 2003 19:04:46 +0200
- Subject: Re: more SIMD operations
> I am currently developing a background subtraction
> program and I am looking at SIMD instructions to speed
> it up. I would like to do this without the use of
> assempler. I have therefore been looking at GCC's
> support of such operations and found
> http://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html.
Another form of support for this kind of operations is the builtin
functions, as in -
http://gcc.gnu.org/onlinedocs/gcc/PowerPC-AltiVec-Built-in-Functions.html,
which might or might not be relevant for you depending on your target
machine.
> However GCC seems only to support +, -, *, /, and
> unary minus. Are there any plans to support more
> operators? I am especially thinking about saturated
> versions of +, -, *, /, and absdiff.
Yes. As part of the autovectorization project -
http://gcc.gnu.org/projects/tree-ssa/vectorization.html, we will need to
add support for additional operators. We still need to decide what form
this support will take (generic builtin functions maybe), and to decide
which set of operations we are going to support. Saturated operations are
strong candidates. Saturation in general is something we plan to address
(as you can see on the webpage).
dorit