RFR(S) 8194992: Null pointer dereference in MultiNode::proj_out related to loopexit()
tobias.hartmann at oracle.com
Thu Jan 18 17:51:39 UTC 2018
On 18.01.2018 18:49, dean.long at oracle.com wrote:
> The Parfait instructions say that it must be run on a slowdebug build. I think Parfait used to have problems with
> recognizing all the hotspot "exit" functions, so maybe that was the reason guarantee() was used.
Okay, thanks for clarifying!
The changes look good to me.
> On 1/18/18 1:42 AM, Tobias Hartmann wrote:
>> Hi Dean,
>> I have a general question about your fixes: Isn't Parfait also used to analyze product builds that won't have the assert
>> code? The guarantees you removed in loopTransform.cpp were added in the past to make Parfait happy (JDK-8009181).
>> On 18.01.2018 04:30, dean.long at oracle.com wrote:
>>> This fix is uses the same approach as 8194988. I split loopexit() into loopexit_or_null(), which can return NULL, and
>>> loopexit() which cannot.
More information about the hotspot-compiler-dev