<div dir="ltr"><div><span style="font-family:arial,sans-serif;font-size:13px">> Hum, that's bad and should be fixed. Can you create a bug, pls?</span><br></div><div><br></div><div style>Done. <a href="http://llvm.org/bugs/show_bug.cgi?id=15172">http://llvm.org/bugs/show_bug.cgi?id=15172</a></div>
<div style><br></div><div style><br></div><div style><span style="font-family:arial,sans-serif;font-size:13px">> In that case, using GAS is always a better options... for now. ;)</span><br></div><div><br></div><div style>
I think we are very close to fully supporting inline ARM assembly, no? Just need to parse those few ELF-specific directives?</div><div><br></div><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">> The main problem with this is that in a large project, with different flags, some files </span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px">> will be compiled with integrated-as, others with GAS, and this could also change</span></div><div><span style="font-family:arial,sans-serif;font-size:13px">> in time, creating a good headache for many people. ;)</span><br>
<div><br></div><div style>So I think our options are:</div><div style><br></div><div style>1) warn & use GAS if option is missing. Renato gives -1.</div><div style>2) warn that we are ignoring these unsupported options.</div>
<div style>3) block integrated-as default until GAS options are implemented.</div><div style>4) turn on integrated-as by default, leave the error, and expect users to workaround. Greg gives -1.</div><div style><br></div>
<div style>-Greg</div><div><br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Feb 5, 2013 at 3:48 PM, Renato Golin <span dir="ltr"><<a href="mailto:renato.golin@linaro.org" target="_blank">renato.golin@linaro.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="im">On 5 February 2013 23:21, Greg Fitzgerald <span dir="ltr"><<a href="mailto:garious@gmail.com" target="_blank">garious@gmail.com</a>></span> wrote:<br>
</div><div class="gmail_extra"><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div><div><span style="font-family:arial,sans-serif;font-size:13px">> Is this for inline asm?</span><br></div></div></div><div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div></div><div><span style="font-family:arial,sans-serif;font-size:13px">Yep</span></div></div></blockquote><div><br></div></div><div>In that case, using GAS is always a better options... for now. ;)</div>
<div class="im">
<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><font face="arial, sans-serif">What I'd prefer to see is if the integrated-as doesn't recognize the option, clang should report a warning and switch to the 'no-integrated-as' path. Thoughts?</font></div>
</div></blockquote><div><br></div></div><div>The main problem with this is that in a large project, with different flags, some files will be compiled with integrated-as, others with GAS, and this could also change in time, creating a good headache for many people. ;)</div>
<div class="im">
<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><span style="font-family:arial,sans-serif;font-size:13px">I agree that's the more important question, but shouldn't we be able to throw hand-written assembly files at clang too?</span></div>
</div></blockquote><div><br></div></div><div>Of course we should, but as long as it's hidden behind a flag, it'll never be properly tested and people will never fix the bugs...</div><div class="im"><div><br></div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><span style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px">$ echo "void a(){}" | clang -x c -S - -o - | clang -x assembler -c - -integrated-as</span><br></div>
<div><stdin>:2:2: error: unknown directive</div><div>.eabi_attribute 6, 2</div></div></blockquote><div><br></div></div><div>Hum, that's bad and should be fixed. Can you create a bug, pls?</div><div class="im"><div>
<br></div><div>
<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><span style="font-family:arial,sans-serif">I agree, but if you do it today, some builds will certainly choke at compile-time. Chromium serves as a nice big workload that currently builds with a very recent version of Clang. As is, that build will go down if you switched the default on them.</span></div>
</div></div></blockquote><div><br></div></div><div>I think this is a concern. Not everyone can change to recent versions of clang as soon as they come out, but as long as the problems are just warnings, I think we can risk a bit more exposure.</div>
<div><br></div><div>Can you compile Chromium entirely, ignoring the warnings and hand-written ASM, with integrated-as, for ARM?</div><div><br></div><div>In your project configuration, you could add "-no-integrated-as" for the parts that do have inline ASM.</div>
<div><br></div><div>cheers,</div><div>--renato</div></div></div></div>
</blockquote></div><br></div>