<div dir="ltr">On 5 November 2013 09:53, Duncan Exon Smith <span dir="ltr"><<a href="mailto:dexonsmith@apple.com" target="_blank">dexonsmith@apple.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On Nov 4, 2013, at 6:20 PM, Rafael Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br>


<br>
> I think this patch is OK with those changes.<br>
<br>
</div>Final (?) patch attached.<br></blockquote><div><br></div><div>    void applyRestriction(llvm::GlobalValue &GV,</div><div>+                        const llvm::TargetLibraryInfo& TLI,</div><div>                         std::vector<const char*> &MustPreserveList,</div>

<div>                         llvm::SmallPtrSet<llvm::GlobalValue*, 8> &AsmUsed,</div><div>                         llvm::Mangler &Mangler);</div><div><br></div><div>One of these is not like the others. Please put the & next to the variable name instead of the type.</div>

<div><br></div><div><div>+  LibFunc::Func f;</div><div>+  if (isa<Function>(GV) && TLI.getLibFunc(GV.getName(), f))</div></div><div><br></div><div>I don't think this is right, and I'm not sure how to fix it. If you say -fno-builtin for example, we won't add anything to this list. So, the compiler may delete your user-supplied memcpy, then the  backend will add calls to memcpy.<br>

</div><div><br></div><div>+target triple = "x86_64-apple-clang"<br></div><div><br></div><div>"clang" is not a part of a triple. How about "x86_64-apple-darwin9"?</div><div><br></div><div>Nick</div>

<div><br></div></div><br></div></div>