Older unused Intel platform check functions
Vladimir Kozlov
vladimir.kozlov at oracle.com
Fri Aug 25 22:50:35 UTC 2023
Hi Bernd,
I don't know what you used for search but, please, use `grep -r` instead of search in IDE.
There are HotSpot VM files (like .ad files, used by JIT compilation) which IDE may not look into.
You may also look on history of code in GitHub to see changes which introduced them.
`is_default_intel_cascadelake` is recent addition [1].
> (Is x86_32.ad used in 64Bit builds?)
No. Only x86.ad and x86_64.ad (and other cpu specific files without _32 suffix) are used for 64-bit JDK build.
Note, Oracle does not support x86 32-bit but OpenJDK Community do support it.
`Netburst` check was added as part of Java Flight Recorder implementation [2] and was part of other information passed
to JFR. I don't see it its reference in ` src/jdk.jfr/` so I assume it was used as simple CPU version string in JFR
output. Based on that I think it can be removed.
This indicate again that we need to check other parts of JDK for possible use of HtoSpot fuctions.
Thanks,
Vladimir K
[1] https://github.com/openjdk/jdk/commit/941a7ac7dab243c6033a78880fd31faa803e62ab
[2] https://bugs.openjdk.org/browse/JDK-8193393
On 8/25/23 2:13 PM, David Holmes wrote:
> On 26/08/2023 3:13 am, Bernd wrote:
>> Hello David.
>>
>> Thanks for the hint (GitHub search seems to swallow that)
>>
>> (Is x86_32.ab used in 64Bit builds?)
>
> I don't think so, but compiler folk would need to confirm that.
>
>> Btw regarding my initial question, the only requirement I have seen so far are asserts asking for SSE2 — since those
>> instructions are part of the x86_64 baseline API it looks like the source at least does not require x86_64-v2 or
>> newer. (That was probably an entirely different thing for x86).
>
> I can't help with the general query, sorry.
>
> David
>
>> Gruss
>> Bernd
>> --
>> http://bernd.eckenfels.net
>> ------------------------------------------------------------------------
>> *Von:* David Holmes <david.holmes at oracle.com>
>> *Gesendet:* Freitag, August 25, 2023 3:57 AM
>> *An:* Bernd Eckenfels <ecki at zusammenkunft.net>; hotspot-dev at openjdk.org <hotspot-dev at openjdk.org>
>> *Betreff:* Re: Older unused Intel platform check functions
>> Hi Bernd,
>>
>> On 25/08/2023 9:23 am, Bernd Eckenfels wrote:
>> > Hello,
>> >
>> > I was checking out to see a hint of what’s the minimum microarchitecture
>> > is, which makes sense to require for OpenJDK. I was not very successful
>> > and it probably depends on compiler toolchain and distribution. Does
>> > somebody have some insights?
>> >
>> > Having said that I noticed the following:
>> >
>> > The 20 years old netburst architecture has a test function but it’s not
>> > used to make feature decisions in the JDK, it is just used to construct
>> > a SSE feature string, where it can be safely removed (the feature flags
>> > are reported anyway, worst case use cpu_family_description instead?)
>> >
>> > VM_Version::is_netburst
>> >
>> > If you want to keep it, it’s probably more consistent to rename it to
>> > is_intel_netburst
>>
>> Yes netburst seem unused now.
>>
>> >
>> > VM_Version::is_default_intel_cascadelake
>> > VM_Version::is_intel_cascadelake
>> >
>> > Those two seem not to be used anywhere, can probably be removed as well.
>>
>> Yes they are used: ./cpu/x86/x86.ad ./cpu/x86/x86_64.ad
>>
>> Cheers,
>> David
>>
More information about the hotspot-dev
mailing list