<div dir="ltr">Please review the PR #3053.</div><div class="gmail_extra"><br><div class="gmail_quote">2016-06-18 0:17 GMT+09:00 Dmitri Gribenko <span dir="ltr">&lt;<a href="mailto:gribozavr@gmail.com" target="_blank">gribozavr@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Fri, Jun 17, 2016 at 7:31 AM, Sangjin Han &lt;<a href="mailto:tinysun.net@gmail.com">tinysun.net@gmail.com</a>&gt; wrote:<br>
&gt; Hi,<br>
&gt;<br>
</span><span class="">&gt; When linking libswiftCore.so, gold linker with --warn-execstack option<br>
&gt; generates following messages.<br>
&gt; /usr/bin/ld.gold: warning: lib/swift/linux/x86_64/swift_begin.o: missing<br>
&gt; .note.GNU-stack section implies executable stack<br>
&gt; /usr/bin/ld.gold: warning: lib/swift/linux/x86_64/swift_end.o: missing<br>
&gt; .note.GNU-stack section implies executable stack<br>
&gt;<br>
&gt; I found the web page about the GNU-stack section.<br>
&gt; <a href="http://en.chys.info/2010/12/note-gnu-stack/" rel="noreferrer" target="_blank">http://en.chys.info/2010/12/note-gnu-stack/</a><br>
&gt;<br>
&gt; After quick testing in my build system (Linux + execstack -q), I think we<br>
&gt; should append one line to stdlib/public/runtime/swift_sections.S, or pass<br>
&gt; the proper option to the linker.<br>
&gt; The line is<br>
&gt;     .section .note.GNU-stack,&quot;&quot;,@progbits<br>
&gt; and the option is<br>
&gt;     &#39;-z noexecstack&#39; (or -Wl,-z -Wl,noexecstack for clang++).<br>
<br>
</span>The patch would be much better I think.  Thank you very much for the<br>
investigation!  Could you submit a pull request?<br>
<span class="HOEnZb"><font color="#888888"><br>
Dmitri<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
--<br>
main(i,j){for(i=2;;i++){for(j=2;j&lt;i;j++){if(!(i%j)){j=0;break;}}if<br>
(j){printf(&quot;%d\n&quot;,i);}}} /*Dmitri Gribenko &lt;<a href="mailto:gribozavr@gmail.com">gribozavr@gmail.com</a>&gt;*/<br>
</div></div></blockquote></div><br></div>