Yes that’s what I want. Yesterday I was using gdb to step into the interpreter generation code to see what’s generated for a particular routine for MethodHandles. The debug build contains a LOT of runtime verification code in the generated code and I couldn’t figure out what’s happening. The product build just generates 10 instructions.
Thanks Ioi > On Apr 10, 2018, at 1:47 PM, Thomas Stüfe <thomas.stu...@gmail.com> wrote: > > If I understand Ioi correctly, he wants a build with PRODUCT and !ASSERT but > with debug symbols and no optimizations? So, no assertions and all switches > with product defaults? > > I can see that this could make sense in certain scenarios. > > ..Thomas > >> On Tue, Apr 10, 2018 at 10:27 PM, Magnus Ihse Bursie >> <magnus.ihse.bur...@oracle.com> wrote: >>> On 2018-04-10 02:00, Ioi Lam wrote: >>> Sometimes I want to debug the product build (I can't bother with turning >>> off all the trueInDebug options in the hotspot globals.hpp). The only way >>> that I have found to do this is: >>> >>> configure --with-native-debug-symbols=internal >>> mv spec.gmk spec.gmk.old >>> cat spec.gmk | sed -e 's/[-]O[0-9s]/-O0/g' > spec.gmk >>> >>> Is there (or should there be) a more elegant way to do it, like "configure >>> --with-debug-level=slowproduct" :-) >> I'm not entirely sure of what you want to achieve. >> >> As I interepret your snippet above, you want no optimization and internal >> debug symbols..? How is that debugging a "product" build? >> >> /Magnus >> >>> >>> Thanks >>> - Ioi >>> >> >