<div dir="ltr">This patch fixes LTO's RecordStreamer so that it records symbols in the MCExpr part of an asm .symver directive as being used. This prevents referenced functions from being internalized and deleted.  This happens, e.g., in libaio (<a href="http://lse.sourceforge.net/io/aio.html">http://lse.sourceforge.net/io/aio.html</a>).<div>

<br></div><div>Without this patch, the attached test case will cause LLVM to produce the error:</div><div><br></div><div>LLVM ERROR: A @@ version cannot be undefined.</div><div><br></div><div>Please let me know what you think.</div>

<div><br></div><div>Thanks,</div><div><br></div><div>Tom</div></div>