slowproduct build

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
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 
--enable-hotspot-product-build"?

/Magnus

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



More information about the build-dev mailing list