more SIMD operations
Dorit Naishlos
DORIT@il.ibm.com
Mon Dec 8 16:56:00 GMT 2003
> 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
More information about the Gcc
mailing list