RFR(S): 8087183: Fix call to inline function is_oop in header debugInfo.hpp.
goetz.lindenmaier at sap.com
Mon Jun 15 09:21:29 UTC 2015
I updated the call to is_oop to do "or_null", and fixed the Copyrights.
I also added the reviewers to the change comment.
Could someone please sponsor this tiny change?
Thanks and best regards,
From: Lindenmaier, Goetz
Sent: Freitag, 12. Juni 2015 08:54
To: 'David Holmes'; Kim Barrett
Cc: HotSpot Developers
Subject: RE: RFR(S): 8087183: Fix call to inline function is_oop in header debugInfo.hpp.
Thanks for the reviews! Could someone please sponsor this?
We started to track down the cause by searching and building the repo, but then
we narrowed in down to two merges ... and aix builds rather slow. I quit this task
But the file drags in a lot of os/aix and os_cpu/aix_ppc files. The includes in these
files differ from those in other platform directories. And with one of the
include cleanup changes in a shared file the indirect include that must have been
there at some point vanished I guess.
But no matter, is_oop should not be called in a header file ...
From: David Holmes [mailto:david.holmes at oracle.com]
Sent: Freitag, 12. Juni 2015 04:07
To: Kim Barrett; Lindenmaier, Goetz
Cc: HotSpot Developers
Subject: Re: RFR(S): 8087183: Fix call to inline function is_oop in header debugInfo.hpp.
On 12/06/2015 3:17 AM, Kim Barrett wrote:
> On Jun 11, 2015, at 5:02 AM, Lindenmaier, Goetz <goetz.lindenmaier at sap.com> wrote:
>> in debugInfo.hpp is_oop() is called. This is an inline function defined in oop.inline.hpp.
>> As oop.inline.hpp is not included in debugInfo.hpp, and it should not be included there,
>> this leads to compilation failures in the fastdebug build on aix.
>> To fix this, I just move the function calling is_oop to debugInfo.cpp. In that file also the
>> only call to that function is located, so that it still can be inlined.
>> Please review this change. I please need a sponsor.
>> Best regards,
> Looks good.
> I'm mildly surprised this doesn't run into problems on other platforms.
Me too. My first thought was precompiled headers, but this code has been
in place for a couple of years - so why is it now a problem ??
> The assert could use oop->is_oop_or_null(), though it makes no difference for this problem.
More information about the hotspot-dev