[LLVMdev] convert llvm ir to selection Dag

KULBHUSHAN PACHAURI kb.pachauri at samsung.com
Mon Oct 4 04:26:40 PDT 2010


Hi,

Thanks for your reply.

I have gone through the tutorial how to write llvm pass  .. and but not able to figure out how should i proceed for this pass..

Can u please tell me some starting point for this..

Let say i have some add function..

define <4xfloat> add(<4xfloat>% in1, <4xfloat>% in2)
{
entry:
      %0 = fadd <4xfloat> %in1, %in2
      ret <4xfloat> %0
}


Thanks & Regards,
Pachauri





------- Original Message -------
Sender : Eli Friedman<eli.friedman at gmail.com> 
Date   : Oct 02, 2010 00:51 (GMT+09:00)
Title  : Re: [LLVMdev] convert llvm ir to selection Dag

On Thu, Sep 30, 2010 at 11:33 PM, Kulbhushan Pachauri
<kb.pachauri at samsung.com> wrote:
> Hi,
>
>
>
> Can anyone please tell me how can I scalarize or de-vectorize the llvm
> vector ir.
>
> In this
> (http://old.nabble.com/Re%3A-Thoughts-about-the-llvm-architecture---p29617203.html)
>  thread
>
> I  found LegalizeTypes will do this while generating machine code from llvm
> ir..
>
>
>
> How do I convert llvm ir to selection Dag. And scalarize the vector ir and
> again get back llvm ir…

You can't... the SelectionDAG is part of CodeGen.  If you really need
to scalarize IR, you'll need to write a pass yourself; that said, it
should be pretty straightforward to write.

-Eli







More information about the llvm-dev mailing list