RFR: 8325880: Require minimum Open XL C/C++ version 17.1.1

Magnus Ihse Bursie ihse at openjdk.org
Thu Feb 15 11:43:04 UTC 2024


On Thu, 15 Feb 2024 11:10:32 GMT, Joachim Kern <jkern at openjdk.org> wrote:

>> What does this mean? That you are not using xlc at all? Or is it clang but still with an xlc frontend, so all xlc flags etc need to stay?
>
>> What does this mean? That you are not using xlc at all? Or is it clang but still with an xlc frontend, so all xlc flags etc need to stay?
> 
> 
> The `xlc` toolchain is for the compiler versions up to 16 (xlclang++); the `clang` toolchain is for the compiler versions 17 (ibm-clang++_r) and higher. For the 17 Compiler the frontend is `clang`-ish and we are using the `clang` flags instead of the `xlc` flags.
> `toolchain.m4` decides on the basis of the found compiler which toolchain to use as default.
> 
> # On AIX the default toolchain depends on the installed (found) compiler
>   #   xlclang++     -> xlc toolchain
>   #   ibm-clang++_r -> clang toolchain
>   # The compiler is searched on the PATH and TOOLCHAIN_PATH
>   # xlclang++ has precedence over ibm-clang++_r if both are installed
> 
> So, if we set the minimum compiler level for AIX to 17, we can remove the xlc toolchain at all. 
> We cannot remove every reference to xlc, because at least some headers we still use the xlc version (globalDefinitions_xlc.hpp)

@JoKern65 Thanks for the explanation! It would be nice to clear out the xlc stuff. Let's open a separate issue for that once this is integrated.

I also believe that the selection of `globalDefinitions_xlc.hpp` is done by #ifdefs in Hotspot source code, and has no relation to the build systems concept of toolchains.

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

PR Comment: https://git.openjdk.org/jdk/pull/17857#issuecomment-1945927380


More information about the build-dev mailing list