<div dir="ltr"><div>Yes, hotspot don't need it. AFAIK its disabled on all platforms.<br></div><div><br></div><div>See:</div><div><br></div><div><a href="https://github.com/openjdk/jdk/blob/master/doc/hotspot-style.md#error-handling">https://github.com/openjdk/jdk/blob/master/doc/hotspot-style.md#error-handling</a></div><div><a href="https://github.com/openjdk/jdk/blob/master/doc/hotspot-style.md#rtti-runtime-type-information">https://github.com/openjdk/jdk/blob/master/doc/hotspot-style.md#rtti-runtime-type-information</a></div><div><br></div><div>C++ exception stack unwinding would probably fail in the face of our mixed, non-ABI-conform stacks. And RTTI is just not needed, why pay for it.</div><div><br></div><div>Cheers, Thomas<br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 22, 2023 at 11:40 AM Baesken, Matthias <<a href="mailto:matthias.baesken@sap.com">matthias.baesken@sap.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-8073211466498597184">





<div style="overflow-wrap: break-word;" lang="en-DE">
<div class="m_-8073211466498597184WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hi Tyler, we had the flags  -</span><span style="font-size:12pt;color:black">qnoeh  and -qno</span><span style="font-size:12pt;color:black" lang="EN-US">r</span><span style="font-size:12pt;color:black">tti</span><span style="font-size:12pt;color:black" lang="EN-US">  
 already  set  before 2010 in our internal  AIX build  (some time  before the  AIX OpenJDK port started).<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12pt;color:black" lang="EN-US">Probably the features were not needed in those ancient times .<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12pt;color:black" lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12pt;color:black" lang="EN-US">I took over the flags  when doing the xlc16 support changes in OpenJDK .<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:12pt;color:black" lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12pt;color:black" lang="EN-US">Best regards, Matthias<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="en-DE"><u></u> <u></u></span></p>
<div>
<div style="border-color:rgb(225,225,225) currentcolor currentcolor;border-style:solid none none;border-width:1pt medium medium;padding:3pt 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> ppc-aix-port-dev <<a href="mailto:ppc-aix-port-dev-retn@openjdk.org" target="_blank">ppc-aix-port-dev-retn@openjdk.org</a>>
<b>On Behalf Of </b>Tyler Steele<br>
<b>Sent:</b> Wednesday, 21 June 2023 20:31<br>
<b>To:</b> <a href="mailto:ppc-aix-port-dev@openjdk.org" target="_blank">ppc-aix-port-dev@openjdk.org</a><br>
<b>Subject:</b> The History of nortti and noeh on AIX<u></u><u></u></span></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">Hi all,<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">I was recently asked [1] why we include -qnoeh [2] and -qnoftti [3] with the build. It looks like it's been in the project since at least jdk9 [4], but I suspect that might not be the true origin
 of the flags.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">Reading the descriptions for the flags makes me suspect that these were added to improve performance "For improved runtime performance, suppress RTTI information generation with the
<span class="m_-8073211466498597184keyword">-qnortti</span> setting." [2] and possibly to reduce code bloat "If your program does not use C++ structured exception handling, you can compile with
<span class="m_-8073211466498597184keyword">-qnoeh</span> to prevent generation of code that is not needed by your application." [3]. But these are just guesses. Any chance that anyone out there knows/remembers why these were added?<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">Tyler<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">[1] <a href="https://github.com/adoptium/adoptium-support/issues/824#issuecomment-1599049333" target="_blank">
https://github.com/adoptium/adoptium-support/issues/824#issuecomment-1599049333</a><u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">[2] <a href="https://www.ibm.com/docs/en/xl-c-and-cpp-aix/16.1?topic=descriptions-qrtti-qnortti-fno-rtti-c-only" target="_blank">
https://www.ibm.com/docs/en/xl-c-and-cpp-aix/16.1?topic=descriptions-qrtti-qnortti-fno-rtti-c-only</a><u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">[3] <a href="https://www.ibm.com/docs/en/xl-c-and-cpp-aix/16.1?topic=descriptions-qeh-fexceptions-c-only#opt_eh" target="_blank">
https://www.ibm.com/docs/en/xl-c-and-cpp-aix/16.1?topic=descriptions-qeh-fexceptions-c-only#opt_eh</a><u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12pt;color:black">[4] <a href="https://github.com/openjdk/jdk/commit/e709aa268df64b2dc000433a1d9621a2fb0940f0" target="_blank">
https://github.com/openjdk/jdk/commit/e709aa268df64b2dc000433a1d9621a2fb0940f0</a><u></u><u></u></span></p>
</div>
</div>
</div>

</div></blockquote></div>