[LLVMdev] More AVX Advice Needed

David Greene dag at cray.com
Wed Dec 2 15:08:09 PST 2009

On Wednesday 02 December 2009 16:51, Eli Friedman wrote:
> On Wed, Dec 2, 2009 at 2:44 PM, David Greene <dag at cray.com> wrote:
> > I'm working on some of the AVX insert/extract instructions.  They're
> > stupid.  They do not operate on ymm registers, meaning we have to
> > use VINSERTF128/VEXTRACTF128 and then do the real operation.
> >
> > Anyway, I'm looking at how INSERTPS and friends work and noticed that
> > there are special SelectionDAG nodes for them and corresponding TableGen
> > dag operators (X86insrtps, for example).
> >
> > What's the reason for using special dag operators as opposed to
> > intrinsics?
> INSERTPS isn't an intrinsic because there's a standard way to
> represent the operation, and we try to avoid adding intrinsics when
> possible.

I don't get it.  How is X86insrtps "standard?"  It looks just like an 
intrinsic to me.


More information about the llvm-dev mailing list