<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Dec 9, 2013, at 4:11 PM, Iain Sandoe <<a href="mailto:iain@codesourcery.com">iain@codesourcery.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">Hi Jim,<br><br>On 10 Dec 2013, at 00:02, Jim Grosbach wrote:<br><blockquote type="cite"><br>On Dec 9, 2013, at 2:41 PM, Rafael Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br><br><blockquote type="cite">On 6 December 2013 14:22, David Fang <<a href="mailto:fang@csl.cornell.edu">fang@csl.cornell.edu</a>> wrote:<br><blockquote type="cite">It seems I am not very good at attaching patches.<br>How does this look?<br></blockquote><br>MCAsmInfo has a hasWeakDefDirective. I would suggest adding a<br>hasWeakDefCanBeHiddenDirective instead of inlining the check on the<br>AsmPrinter.<br><br>I will let Grosbach comment on which targets/versions we should do this for.<br></blockquote><br><10 seems reasonable to me.<br><br>I don’t like using the target version for this, but as the FIXME indicates, there’s not a better answer available right now, so pragmatically this will get things working. It’s also simple enough that when/if we do get a better answer, this doesn’t make it harder to do so.<br></blockquote><br>Would a patch to pass target-linker-version into the target instantiation be acceptable?<br>(this is/was my plan when I next have a few mins).<br></div></blockquote><div><br></div><div>Probably, yeah.</div><br><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">We can then key codegen on the correct thing.<br><br>ISTM that when a compiler is "inherently a cross compiler" *and* is under development *and* might be used with a bunch of different exterior tools, that passing the linker and assembler version to the codegen is a sensible step (at least during the development phase).<br></div></blockquote><div><br></div><div>Having the compiler output be used by a bunch of different exterior tools has never been a goal before. It’s always been required to use a “recent enough” binutils/cctools+ld64. You guys are in a tricky spot, though, working on a platform that realistically can’t get new low level tools (other than what clang itself builds/ships with).</div><br><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><br>However, as commented before, this param seems to reach compiler invocation and then get dropped on the floor.<br>Iain</div></blockquote></div><br></body></html>