I would like to make the following member of AsmPrinter be protected void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, InlineAsm::AsmDialect AsmDialect InlineAsm::AD_ATT) const; I have some stubs that I want to emit in MipsAsmParser . Are there any objections to doing this? Reed
Uhhhh... -eric On Tue, Jan 28, 2014 at 4:56 PM, reed kotler <rkotler at mips.com> wrote:> I would like to make the following member of AsmPrinter be protected > > > void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, > InlineAsm::AsmDialect AsmDialect > InlineAsm::AD_ATT) const; > > I have some stubs that I want to emit in MipsAsmParser . > > Are there any objections to doing this? > > Reed > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On 01/28/2014 06:29 PM, Eric Christopher wrote:> Uhhhh...Is that a yes?> -eric > > On Tue, Jan 28, 2014 at 4:56 PM, reed kotler <rkotler at mips.com> wrote: >> I would like to make the following member of AsmPrinter be protected >> >> >> void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, >> InlineAsm::AsmDialect AsmDialect >> InlineAsm::AD_ATT) const; >> >> I have some stubs that I want to emit in MipsAsmParser . >> >> Are there any objections to doing this? >> >> Reed >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On 01/28/2014 06:29 PM, Eric Christopher wrote:> Uhhhh... > > -eric > > On Tue, Jan 28, 2014 at 4:56 PM, reed kotler <rkotler at mips.com> wrote: >> I would like to make the following member of AsmPrinter be protected >> >> >> void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, >> InlineAsm::AsmDialect AsmDialect >> InlineAsm::AD_ATT) const; >> >> I have some stubs that I want to emit in MipsAsmParser . >> >> Are there any objections to doing this? >> >> Reed >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdevStubs to emit in MipsAsmPrinter I think you were one of the people that was against me emitting the inline asm earlier as part of the IR. Well, now I am starting to move that to the back end of code generation due to other issues that were not apparent when I first implemented this mips16 hard float. Also, it was agreed at that time that it would be better if possible to do things this way.
On 28 January 2014 19:56, reed kotler <rkotler at mips.com> wrote:> I would like to make the following member of AsmPrinter be protected > > > void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, > InlineAsm::AsmDialect AsmDialect > InlineAsm::AD_ATT) const; > > I have some stubs that I want to emit in MipsAsmParser .You mean Printer? There is no such a thing as inline asm in a .s file.> Are there any objections to doing this?Probably. EmitInilneAsm is the only case I know that has a reasonable use of hasRawTextSupport in order for it to work on targets without an asm parser. Exposing it exposes a way for targets avoid the MC layer. Cheers, Rafael
On 01/29/2014 12:14 PM, Rafael Espíndola wrote:> On 28 January 2014 19:56, reed kotler <rkotler at mips.com> wrote: >> I would like to make the following member of AsmPrinter be protected >> >> >> void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, >> InlineAsm::AsmDialect AsmDialect >> InlineAsm::AD_ATT) const; >> >> I have some stubs that I want to emit in MipsAsmParser . > You mean Printer? There is no such a thing as inline asm in a .s file. > >> Are there any objections to doing this? > Probably. EmitInilneAsm is the only case I know that has a reasonable > use of hasRawTextSupport in order for it to work on targets without an > asm parser. Exposing it exposes a way for targets avoid the MC layer. > > Cheers, > RafaelSo how do I create stubs? I have specific function stubs that I want to create. There is no direct object emitter for mips16 at this time. Reed
It may be moot because Reed is currently rewriting the patch to avoid using EmitInlineAsm and EmitRawText but I wanted to question something here. I'm thinking that hasRawTextSupport() shouldn't be the condition used inside EmitInlineAsm. I think it would be more correct to have a useRawTextSupport() predicate that can return hasRawTextSupport() for (sub)targets that haven't implemented their MC layer, and false for those that have. What do you think?> -----Original Message----- > From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] > On Behalf Of Rafael Espíndola > Sent: 29 January 2014 20:14 > To: Reed Kotler > Cc: LLVMdev at cs.uiuc.edu > Subject: Re: [LLVMdev] making emitInlineAsm protected > > On 28 January 2014 19:56, reed kotler <rkotler at mips.com> wrote: > > I would like to make the following member of AsmPrinter be protected > > > > > > void EmitInlineAsm(StringRef Str, const MDNode *LocMDNode = 0, > > InlineAsm::AsmDialect AsmDialect > > InlineAsm::AD_ATT) const; > > > > I have some stubs that I want to emit in MipsAsmParser . > > You mean Printer? There is no such a thing as inline asm in a .s file. > > > Are there any objections to doing this? > > Probably. EmitInilneAsm is the only case I know that has a reasonable use of > hasRawTextSupport in order for it to work on targets without an asm parser. > Exposing it exposes a way for targets avoid the MC layer. > > Cheers, > Rafael > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev