<div dir="ltr"><div>Thank you Nick. I think it's worth giving LLD a try.<br>I tried building lld (branch 3.4) on top of llvm 3.4 and got the following error in the last step when it is linking lld.<br><br>[100%] Building CXX object tools/lld/tools/lld/CMakeFiles/lld.dir/lld.cpp.o<br>Linking CXX executable ../../../../bin/lld<br>ld: library not found for -llldHexagonELFTarget<br><br></div>Can you please help me with that?<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jan 12, 2015 at 5:55 PM, Nick Kledzik <span dir="ltr"><<a href="mailto:kledzik@apple.com" target="_blank">kledzik@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5"><br>
<br>
On Jan 12, 2015, at 2:45 PM, Rafael Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br>
> On 10 January 2015 at 17:43, Rahman Lavaee <<a href="mailto:r.lavaee@gmail.com">r.lavaee@gmail.com</a>> wrote:<br>
>> Hi,<br>
>> I'm building LLVM on Mac OS 10.10 and I'm having trouble making LTO work.<br>
>> The system linker dumps the following information when I executed "ld -v"<br>
>><br>
>> @(#)PROGRAM:ld  PROJECT:ld64-241.9<br>
>> configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 x86_64h<br>
>> armv6m armv7m armv7em<br>
>> LTO support using: LLVM version 3.4.2<br>
>><br>
>> which tells me that it is correctly pointing to the LLVM that I have built.<br>
>> However, when I pass any LTO command line arguments like "disable-inling" it<br>
>> complains.<br>
>><br>
>> I was previously working on Linux and the gold plugin makes it very<br>
>> convenient. However, that plugin only handles ELF assembly and I can't<br>
>> install it on Mac.<br>
><br>
><br>
> I am not sure if there is a supported way of passing extra llvm<br>
> options during LTO with ld64.<br>
<br>
</div></div>You can pass options with -mllvm.  But you need to get it to the linker, so when invoking the linker through clang it looks like:<br>
<br>
 -Wl,-llvm,-myltoopt<br>
<br>
That will get it to lto_codegen_debug_options().  But I don’t know what options strings lto_codegen_debug_options() handles.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Nick </font></span></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature"><font face="tahoma, sans-serif">Rahman</font></div>
</div>