On Wed, 22 Nov 2023 21:41:50 GMT, Aleksey Shipilev <sh...@openjdk.org> wrote:

>> @shipilev - Do you have a particular legacy x86 in mind?
>
> My point is that it is such an easy thing to do: leave the "cx8" flag sensing 
> code in, and keep setting up `_supports_cx8` based on it for `!_LP64` paths. 
> This both provides more safety by failing cleanly on non-CX8 platform, and 
> gives other platforms some guidance: if you can check something is supported, 
> check it. I think we are generally trying to fail cleanly on unsupported 
> configs, if that is easy to achieve.
> 
> But now that you nerd-sniped me into this... I think non-CX8 platforms would 
> probably predate Pentium. The oldest real machine my lab has is Z530, which 
> already has CX8. But it was easy to also go to my QEMU-driven build-test 
> server, ask for `i486` as platform there, and et voila, no `cx8` in CPU flags:
> 
> 
> buildworker-debian12-32:~$ lscpu
> Architecture:            i486
>   CPU op-mode(s):        32-bit
>   Address sizes:         36 bits physical, 32 bits virtual
>   Byte Order:            Little Endian
> CPU(s):                  4
>   On-line CPU(s) list:   0-3
> Vendor ID:               GenuineIntel
>   Model name:            486 DX/4
>     CPU family:          4
>     Model:               8
>     Thread(s) per core:  4
>     Core(s) per socket:  1
>     Socket(s):           1
>     Stepping:            0
>     BogoMIPS:            5699.99
>     Flags:               fpu vme pse apic ht cpuid tsc_known_freq x2apic 
> hypervisor cpuid_fault
> 
> 
> And mainline JDK even starts there! (with interpreter, there are some asserts 
> firing in compiler code, having to do with odd instruction selection on some 
> paths):
> 
> 
> $ jdk/bin/java -Xint -version
> openjdk version "22-testing" 2024-03-19
> OpenJDK Runtime Environment (fastdebug build 
> 22-testing-builds.shipilev.net-openjdk-jdk-b627-20231121)
> OpenJDK Server VM (fastdebug build 
> 22-testing-builds.shipilev.net-openjdk-jdk-b627-20231121, interpreted mode, 
> sharing)

Nice spelunking... I was wondering if it was something that old. I wasn't 
trying to nerd-snipe...

I was in the dev lab at Intel when Xenix on the i386 first came up and sent its 
"Hello World!" email...
I left Intel for Sun in 1987 while i486 was still in development, but I still 
had periodic lunches with
folks that worked on those teams. Life was simpler back then...

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/16625#discussion_r1402748121

Reply via email to