I'm building a target for the intermediate language of another compiler. The other intermediate language is close to an assembly language (RTL, 1 operation per line), so I based my target off of the Mips target. However, the intermediate language i'm targetting does not support tabs before the instructions. I've looked through the files and found that the tab comes from the printInstruction() method, which is generated when compiling. Directly after all of the tables it generates, it produces this line: O << "\t"; (O is the output stream) Since its in the generated code, I've been looking through the .td files, but haven't had any luck. How can I prevent this tab from being generated? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120908/77cf8d8d/attachment.html>
I forgot to mention, the generated file that has the tab is VPOGenAsmWriter.inc. On Sat, Sep 8, 2012 at 2:43 PM, ryan baird <ryanrbaird at gmail.com> wrote:> I'm building a target for the intermediate language of another compiler. > The other intermediate language is close to an assembly language (RTL, 1 > operation per line), so I based my target off of the Mips target. However, > the intermediate language i'm targetting does not support tabs before the > instructions. I've looked through the files and found that the tab comes > from the printInstruction() method, which is generated when compiling. > > Directly after all of the tables it generates, it produces this line: > O << "\t"; > > (O is the output stream) > > Since its in the generated code, I've been looking through the .td files, > but haven't had any luck. How can I prevent this tab from being generated? >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120908/8244aab0/attachment.html>
Ryan, I've always been bothered by this tab character that doesn't come from the target. The line you're looking for I believe is from /utils/TableGen/AsmWriterEmitter.cpp at line 428. In my opinion the target should control whether a prefix is printed before an instruction. Thanks, Javier From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of ryan baird Sent: Saturday, September 08, 2012 1:45 PM To: llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] LLC always has a tab? I forgot to mention, the generated file that has the tab is VPOGenAsmWriter.inc. On Sat, Sep 8, 2012 at 2:43 PM, ryan baird <ryanrbaird at gmail.com<mailto:ryanrbaird at gmail.com>> wrote: I'm building a target for the intermediate language of another compiler. The other intermediate language is close to an assembly language (RTL, 1 operation per line), so I based my target off of the Mips target. However, the intermediate language i'm targetting does not support tabs before the instructions. I've looked through the files and found that the tab comes from the printInstruction() method, which is generated when compiling. Directly after all of the tables it generates, it produces this line: O << "\t"; (O is the output stream) Since its in the generated code, I've been looking through the .td files, but haven't had any luck. How can I prevent this tab from being generated? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120908/4527cecd/attachment.html>