I'm working on 3.1.   For now I added a custom AsmStreamer, but it's nice to know that this will be fixed in 3.2.<br><br><div class="gmail_quote">On Sat, Sep 8, 2012 at 6:50 PM, NAKAMURA Takumi <span dir="ltr"><<a href="mailto:geek4civic@gmail.com" target="_blank">geek4civic@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">2012/9/9 ryan baird <<a href="mailto:ryanrbaird@gmail.com">ryanrbaird@gmail.com</a>>:<br>
<div><div class="h5">> I'm working on building a target for llvm that's the intermediate language<br>
> of another compiler, so that the other compiler can benifit from llvm's<br>
> optimization passes.<br>
><br>
> I essentially made a copy of the mips backend, and then started changing the<br>
> output to match the intermediate language of the compiler.  Most of the<br>
> output can be overriden, but I haven't figured out how to change the way<br>
> globals are emitted.<br>
><br>
> The AsmPrinter::EmitGlobalVariable function in the<br>
> llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp file is not virtual; if I try to<br>
> override it, I get a "multiple definitions" error.  To emit the global, it<br>
> just calls the OutputStreamer.EmitCommonSymbol method.  Again, this has<br>
> become a problem because I don't want the default output for global symbols.<br>
> If I can't override this method, how can I change the way that my target<br>
> outputs globals variables?<br>
<br>
</div></div>Ryan,<br>
<br>
On which version are you working? I can see, since r93858;<br>
<br>
Author: Chris Lattner <<a href="mailto:sabre@nondot.org">sabre@nondot.org</a>><br>
Date:   Tue Jan 19 14:38:33 2010<br>
<br>
+    virtual void EmitGlobalVariable(const GlobalVariable *GV);<br>
<br>
It seems XCoreAsmPrinter overrides some methods.<br>
<span class="HOEnZb"><font color="#888888"><br>
...Takumi<br>
</font></span></blockquote></div><br>