[LLVMdev] MIPS 32bit code generation
Gang-Ryung Uh
guh at boisestate.edu
Fri Oct 7 13:11:40 PDT 2011
Hi,
I noticed one class in MipsInstrFormats.td:L46 -> Class MipsPseudo. I
wonder whether I can use this. If does, I wonder what would be the right way
to use. Thanks,
On Thu, Oct 6, 2011 at 11:29 AM, Akira Hatanaka <ahatanak at gmail.com> wrote:
> Do you want to replace
>
> lui $2, %hi(g1)
> addiu $2, $2, %lo(g1)
>
> with this?
> la $2, g1
>
> If that is the case, you can add this pattern.
>
> def op_la : Operand<i32>;
>
> def LA :
> FI<0x09, (outs CPURegs:$dst), (ins op_la:$addr0, op_la:$addr1),
> "la $dst, $addr0", [(set CPURegs:$dst,
> (add (MipsHi tglobaladdr:$addr0), (MipsLo
> tglobaladdr:$addr1)))], IIAlu>;
>
> Note that you still need to find a way to print "g1" instead of "%hi(g1)".
>
> On Wed, Oct 5, 2011 at 4:01 PM, Gang-Ryung Uh <guh at boisestate.edu> wrote:
> > Hi,
> > In order to emit "la $4,ADDR" instead of lui followed by addiu to
> load
> > the data address, could you advise what is proper way to revise td files
> in
> > the MIPS target?
> > Thanks,
> >
> > --
> > Gang-Ryung Uh, Associate Professor
> > Department of Computer Science
> > College of Engineering, Boise State Univerisity
> > tel: 1 208 426-5691 e-mail:guh at boisestate.edu
> > http://cs.boisestate.edu/~uh
> >
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> >
>
--
Gang-Ryung Uh, Associate Professor
Department of Computer Science
College of Engineering, Boise State Univerisity
tel: 1 208 426-5691 e-mail:guh at boisestate.edu
http://cs.boisestate.edu/~uh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111007/34b764f3/attachment.html>
More information about the llvm-dev
mailing list