[LLVMdev] Turning on/off instruction extensions

Duncan Sands baldrick at free.fr
Thu Nov 24 06:49:35 PST 2011


Hi Pablo, if you use the dragonegg front-end and compile at -O3 with the
option -fplugin-arg-dragonegg-enable-gcc-optzns then you should get
vectorized code passed to the LLVM backend (that option turns on the gcc
optimizers, in particular its auto-vectorizer).  If you want to produce
vector code by hand, check out the gcc docs where they explain about their
vector extensions to the C language.  These also work with clang.

Ciao, Duncan.

> I'm trying to run some examples with different backend options (turning
> on/off SSE, 3dnow, or MMX instructions). However, I don't see any
> difference in terms of execution time. Does anybody know which language
> constructs (in C/C++ preferably) should I try to make these instructions
> generated (and thus make a difference between a backend that enables
> them or not) ?
>
> I tried generating vector instructions with loops but it's not
> happening. Perhaps Polly can generate vector instructions?
>
> Thanks ahead,
>
> Pablo
> DIE-UPM
> Madrid
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list