RFR: 8219247: Enable inlining of newly introduced PlatformMonitor methods

David Holmes david.holmes at oracle.com
Fri Feb 22 03:43:17 UTC 2019


Hi Claes,

On 22/02/2019 1:18 am, Claes Redestad wrote:
> Hi,
> 
> On 2019-02-20 04:45, David Holmes wrote:
>>> Webrev: http://cr.openjdk.java.net/~redestad/8219247/open.00/
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8219247
>>>
>>> Testing: tier1+2, verified improvements on a range of startup
>>> benchmarks.
>>>
>>> Note: the patch includes an untested but likely sufficient fix to AIX
>>> code to include os_posix.inline.hpp from os_aix.inline.hpp - any help
>>> verifying this builds and passes tests on AIX would be much appreciated.
>>
>> Why did you do that for aix (and bsd), when AFAICS there is no usage 
>> of anything from os_posix.inline.hpp in os_aix.inline.hpp? Shouldn't 
>> the include have gone into the .cpp file that refers to the 
>> PlatformMonitor functions?
> 
> There are places like mutex.cpp that depend on the PlatformMonitor 
> functions, and the platform specific os_*.inline.hpp is included via a
> macro in os.inline.hpp. Thus it made sense in my mind to add
> os_*.inline.hpp -> os_posix.inline.hpp includes on all platforms. E.g.,
> Mac won't build without an inline of os_posix.inline.hpp.

Okay - I think I get the gist of that.

> This also mimics how include of os_posix.inline.hpp is already done on
> Linux.
> 
>>
>> One further nit, the additional include of pthread.h should not be 
>> needed as it will come in via globalDefinitions.hpp. Or do you object 
>> to implicit includes via that mechanism?
> 
> I mildly object to most use of implicit includes, but if <pthread.h> is
> commonly known to be globally available then it seems superfluous, yes.
> 
> Removed superfluous <pthread.h> and <windows.h> includes:
> 
> http://cr.openjdk.java.net/~redestad/8219247/open.00/

open.01

Looks good.

Thanks,
David

> Thanks!
> 
> /Claes


More information about the hotspot-runtime-dev mailing list