slowproduct build

Magnus Ihse Bursie magnus.ihse.bursie at
Tue Apr 10 21:21:11 UTC 2018

On 2018-04-10 23:08, Ioi Lam wrote:
> 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.
So you want to have a way to force -O0 for all compiled files? Something 
like "bash configure --with-debug-level=release 
--with-optimization=none", or possibly "make OPTIMIZATION=NONE"?

Or are you happy with the optimization level of a slowdebug build, and 
only want to adjust the value of PRODUCT and ASSERT for hotspot to match 
what's done for a release build? Something like "bash configure 


> Thanks
> Ioi
> On Apr 10, 2018, at 1:47 PM, Thomas Stüfe <thomas.stuefe at 
> <mailto:thomas.stuefe at>> 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.bursie at 
>> <mailto:magnus.ihse.bursie at>> 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

More information about the build-dev mailing list