<div dir="ltr">On 20 June 2013 13:35, Rajesh Viswabramana <span dir="ltr"><<a href="mailto:rajesh.vis@samsung.com" target="_blank">rajesh.vis@samsung.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div>
<p>-  What considerations will be made from llvm side to make abi compatibile with gcc/other compilers for arm - struct byval size >64 bytes.<br></p></div></blockquote><div></div></div><br></div><div class="gmail_extra">

Hi Rajesh,</div><div class="gmail_extra"><br></div><div class="gmail_extra">I'm not sure I follow your question, but in general, the idea is to be compatible with ABIs, not with specific compilers. So, if compiler X is not YABI compatible, the best thing to do is to make it be so, rather than make LLVM follow X blindly.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">The one exception is, of course, GCC. But in all cases, we should aim to be compatible with both public ABIs and GCC extensions, and whenever possible, implement one as alias to each other. This is the path taken by the Compiler-RT project, for example, and how it is done for library calls in ARMISelLowering.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">However, if I'm not mistaken, EABI-GCC always produce EABI compatible output on ARM. If not, it's probably a bug.</div><div class="gmail_extra"><br></div>
<div class="gmail_extra">cheers,</div><div class="gmail_extra">--renato</div></div>