<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 3 February 2014 17:31, Keith Walker <span dir="ltr"><<a href="mailto:kwalker@arm.com" target="_blank">kwalker@arm.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-GB" link="blue" vlink="purple"><p class="MsoNormal"><span style="color:rgb(31,73,125);font-family:Calibri,sans-serif;font-size:11pt">Should the EHABI directives (.fnstart/.fnend/.push/.pad/.</span><span style="color:rgb(31,73,125);font-family:Calibri,sans-serif;font-size:11pt">setfp etc) always be generated (and thus resulting in the generation of .ARM.extab & .ARM.exidx sections), or should these directives only be generated when there are unwind tables to be described?</span></p>
</div></blockquote><div><br></div><div>Hi Keith,</div><div><br></div><div>AFAIK, .ARM.exidx only needs to exist when there is one of more of .ARM.extab, which is only needed if there are functions that need unwinding because of exception handling (C++) code. The fact that we are always generating is probably due to the fact that EHABI was never on by default so it never needed to check if it *should* generate the table or not, and always did.</div>
<div><br></div><div>I'll have a look on how to only enable it the function doesn't have nounwind attribute. I don't know the role of -munwind-tables on the attribute, but we should generate them if on.</div><div>
<br></div><div>cheers,</div><div>--renato</div></div></div></div>