[llvm-dev] New to LLVM. Need help generating assembly

Tom Stellard via llvm-dev llvm-dev at lists.llvm.org
Wed Dec 5 22:15:20 PST 2018


On 12/05/2018 07:22 PM, m m via llvm-dev wrote:
> Hi,
> I'm new to LLVM and need some help. I defined an instruction to increment the stack pointer by 'amount' (i.e. sp = sp + amount). During assembly generation, the string that gets emitted is "ADS $SP"  rather than "ADS 10", for example, if I want to increment it by 10.
> 
> Can somebody show me what I'm doing wrong?
> Thanks.
> 
> def ADS: F_J<0b100001,(outs),(ins i32imm:$amount),"ADS $amount",[(set SP, (add SP, i32imm:$amount))] > {
> 
>         bits<10> amount;
> 
>         let Inst{9-0} = amount;
>         let isReMaterializable = 1;
>         let mayLoad = 0;
>         let mayStore = 0;
>         let Defs = [SP];
>         let Uses = [SP];
> }

What does the MCInst dump of this instruction look like?  Have you looked
at YourTargetGenAsmWriter.inc to see which print methods are being called
for this instruction?

-Tom
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> 



More information about the llvm-dev mailing list