[9] RFR (S): 8149141: Optimized build is broken
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Mon Feb 8 13:06:29 UTC 2016
Vladimir, Kim, thanks for the reviews.
>> PS: I'm surprised that unit tests are full of asserts, but guarded by !defined(PRODUCT). Any reason to keep the tests in optimized build?
>
> Change looks good.
>
> Not sure it’s worth cleaning up the confusion in the internal VM tests around those flags, since we’re
> hoping for a better unit test framework soonish (JDK-8047975). I’m pretty sure there are other places
> where there is confusion around !defined(PRODUCT) && !defined(ASSERT), though it would help if
> I could find a clear description of what “optimized” builds are for. That variant seems to be the one
> nobody talks about…
I'm fine with leaving it as is for now.
Optimized binaries are essentially product binaries with additional
diagnostic functionality: counters, tracing, internal structures
dumping, verification. Just look through *globals.hpp for notproduct flags.
Usually, optimized binaries behave like product, but provide more tools
to peek into the JVM. So, it is much easier to diagnose & debug problems
with optimized binaries.
But with gradual move of diagnostic functionality into product,
optimized binaries become less relevant.
Best regards,
Vladimir Ivanov
More information about the hotspot-dev
mailing list