<font size="3">Hi,</font><div><font size="3"><br></font></div><div><font size="3">I'm embarrassed that I can't figure this out... I have a compiler that outputs my module in either .s assembly format or .obj binary format, either one works just fine. But if I try to output both of them by adding passes, LLVM throws an Assert:</font></div>
<div><font size="3"><br></font></div><div><font size="3"><div>void WinCOFFStreamer::EmitLabel(MCSymbol *Symbol) {</div><div> assert(Symbol->isUndefined() && "Cannot define a symbol twice!");</div><div>
MCObjectStreamer::EmitLabel(Symbol);</div><div>}</div><div><br></div></font></div><div><span style="font-size:medium">I attached my code which attempts to make it output both... if I comment out the lines for one or the other it works just fine.</span></div>
<div><span style="font-size:medium">That code is just a copy of the llvm c compiler's code, changed slightly to suit my needs.</span></div><div><br></div><div><font size="3">A general "do this and then this" answer will probably get me on the right path...</font></div>
<div><font size="3"><br></font></div><div><font size="3">Thanks!!</font></div><div><font size="3"><br></font></div>