diff --git a/.github/workflows/test-eb-hooks-toolchains.yml b/.github/workflows/test-eb-hooks-toolchains.yml new file mode 100644 index 00000000..2041a3ae --- /dev/null +++ b/.github/workflows/test-eb-hooks-toolchains.yml @@ -0,0 +1,33 @@ +# documentation: https://help.github.com/en/articles/workflow-syntax-for-github-actions +name: Unit tests for supported toolchains in EasyBuild hooks +on: + push: + paths: + - eb_hooks.py + - eessi_supported_toolchains.toml + - tests/eb_hooks/** + - .github/workflows/test-eb-hooks-toolchains.yml + pull_request: + paths: + - eb_hooks.py + - eessi_supported_toolchains.toml + - tests/eb_hooks/** + - .github/workflows/test-eb-hooks-toolchains.yml + workflow_dispatch: +permissions: + contents: read # to fetch code (actions/checkout) +jobs: + test_supported_toolchains: + runs-on: ubuntu-24.04 + steps: + - name: Check out software-layer repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + + - name: Install EasyBuild and pytest + run: | + python3 -m venv "$RUNNER_TEMP/venv" + "$RUNNER_TEMP/venv/bin/pip" install easybuild pytest + + - name: Run unit tests + run: | + "$RUNNER_TEMP/venv/bin/python" -m pytest -v tests/eb_hooks diff --git a/.github/workflows/test-eb-hooks.yml b/.github/workflows/test-eb-init-files.yml similarity index 84% rename from .github/workflows/test-eb-hooks.yml rename to .github/workflows/test-eb-init-files.yml index dfcc576c..c8bd3981 100644 --- a/.github/workflows/test-eb-hooks.yml +++ b/.github/workflows/test-eb-init-files.yml @@ -1,5 +1,5 @@ # documentation: https://help.github.com/en/articles/workflow-syntax-for-github-actions -name: Run checks on EasyBuild hooks script +name: Run checks on EasyBuild hooks script and related init files on: push: pull_request: @@ -26,30 +26,36 @@ jobs: eessi_stack_version: ${{matrix.EESSI_VERSION}} use_eessi_module: true - - name: Check whether eb_hooks.py script is up-to-date + - name: Check whether eb_hooks.py and related files are up-to-date if: ${{ github.event_name == 'pull_request' }} run: | - FILE="eb_hooks.py" - TEMP_FILE="$(mktemp)" + # Files that are installed in the same directory as the hooks, and have to be up-to-date + FILES=(eb_hooks.py eessi_supported_toolchains.toml) # Fetch base branch git fetch origin ${{ github.base_ref }} - # Check if the hooks has changed in the PR - if git diff --name-only origin/${{ github.base_ref }}...HEAD | grep -q "^$FILE$"; then - echo "Hooks changed in PR. Using PR version." - cp "$FILE" "$TEMP_FILE" - else - echo "File not changed in PR. Using default branch version." - git show origin/${{ github.base_ref }}:$FILE > "$TEMP_FILE" - fi - - # replace placeholder (as is also done in install_scripts.sh) - sed -i "s//${{matrix.EESSI_VERSION}}/g" "${TEMP_FILE}" - - # Compare the hooks to what is shipped in the repository module load EESSI-extend - diff "$TEMP_FILE" "$EASYBUILD_HOOKS" + + for FILE in "${FILES[@]}"; do + echo "Checking whether $FILE is up-to-date" + TEMP_FILE="$(mktemp)" + + # Check if the file has changed in the PR + if git diff --name-only origin/${{ github.base_ref }}...HEAD | grep -q "^$FILE$"; then + echo "$FILE changed in PR. Using PR version." + cp "$FILE" "$TEMP_FILE" + else + echo "$FILE not changed in PR. Using default branch version." + git show origin/${{ github.base_ref }}:$FILE > "$TEMP_FILE" + fi + + # replace placeholder (as is also done in install_scripts.sh) + sed -i "s//${{matrix.EESSI_VERSION}}/g" "${TEMP_FILE}" + + # Compare to what is shipped in the repository (all files are installed in the same directory as the hooks) + diff "$TEMP_FILE" "$(dirname "$EASYBUILD_HOOKS")/$FILE" + done check_eb_hooks_functionality: runs-on: ubuntu-24.04 diff --git a/EESSI-install-software.sh b/EESSI-install-software.sh index 6ed3985a..a16c542d 100755 --- a/EESSI-install-software.sh +++ b/EESSI-install-software.sh @@ -234,6 +234,19 @@ else echo_green ">> Using ${EESSI_SOFTWARE_SUBDIR} as software subdirectory!" fi +# Check that the compilers of all supported toolchains translate the native architecture flag into exactly the same +# target flags on this build host as on other build hosts for the same CPU target, to ensure that binaries built on +# different build hosts for the same CPU target are compatible +if [[ ${GENERIC} -eq 1 ]]; then + echo ">> Skipping check of native compiler flags, since this is a generic build" +elif [[ -n "${EESSI_SKIP_NATIVE_FLAGS_CHECK}" ]]; then + echo_yellow ">> Skipping check of native compiler flags, since \$EESSI_SKIP_NATIVE_FLAGS_CHECK is set" +else + ${TOPDIR}/scripts/native_flags/check_native_flags.sh + check_exit_code $? ">> Native compiler flags on this build host are OK" \ + "Native compiler flags check failed, refusing to build on this host (set \$EESSI_SKIP_NATIVE_FLAGS_CHECK to override)" +fi + # avoid that pyc files for EasyBuild are stored in EasyBuild installation directory export PYTHONPYCACHEPREFIX=$TMPDIR/pycache # force Python's stdout and stderr streams to be unbuffered diff --git a/eb_hooks.py b/eb_hooks.py index fc26f88b..7125cf51 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -10,6 +10,14 @@ import tarfile from typing import NamedTuple +try: + import tomllib # in the standard library since Python 3.11 +except ImportError: + try: + import tomli as tomllib # backport for older Python versions + except ImportError: + tomllib = None + import easybuild.tools.environment as env from easybuild.easyblocks.generic.configuremake import obtain_config_guess from easybuild.framework.easyconfig.constants import EASYCONFIG_CONSTANTS @@ -67,31 +75,60 @@ STACK_REPROD_SUBDIR = 'reprod' -EESSI_SUPPORTED_TOP_LEVEL_TOOLCHAINS = { - '2023.06': [ - {'name': 'foss', 'version': '2022b'}, - {'name': 'foss', 'version': '2023a'}, - {'name': 'foss', 'version': '2023b'}, - ], - '2025.06': [ - {'name': 'foss', 'version': '2024a'}, - {'name': 'foss', 'version': '2025a'}, - {'name': 'foss', 'version': '2025b'}, - ], - '2026.06': [ - {'name': 'foss', 'version': '2026.1'}, - {'name': 'lfoss', 'version': '2026.1'}, - ], -} -if EASYBUILD_VERSION >= '5.2.0': - EESSI_SUPPORTED_TOP_LEVEL_TOOLCHAINS['2025.06'].append( - {'name': 'lfoss', 'version': '2025b'} - ) +# Environment variable that can be used to point to a custom TOML file with the supported top-level toolchains +SUPPORTED_TOOLCHAINS_FILE_ENVVAR = 'EESSI_SUPPORTED_TOOLCHAINS_FILE' -if EASYBUILD_VERSION >= '5.3.1': - EESSI_SUPPORTED_TOP_LEVEL_TOOLCHAINS['2025.06'].append( - {'name': 'rompi', 'version': '2025a'} - ) + +def load_supported_top_level_toolchains(): + """ + Load the supported top-level toolchains per EESSI version from a TOML file. + + The location of the TOML file can be set through the environment variable EESSI_SUPPORTED_TOOLCHAINS_FILE. + If that is not set, eessi_supported_toolchains.toml is expected next to this hooks file (both in the + software-layer-scripts repository, and when installed in /init/easybuild). + + Toolchains that require a more recent EasyBuild version than the one being used (as specified via + 'min_easybuild_version') are left out. + + Returns: + supported_toolchains (dict): maps each EESSI version to a list of dicts with the 'name' and 'version' + of a supported top-level toolchain + """ + default_file = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'eessi_supported_toolchains.toml') + toolchains_file = os.getenv(SUPPORTED_TOOLCHAINS_FILE_ENVVAR) + envvar_msg = f" (set via ${SUPPORTED_TOOLCHAINS_FILE_ENVVAR})" + if not toolchains_file: + toolchains_file = default_file + envvar_msg = "" + + if tomllib is None: + raise EasyBuildError("Parsing TOML files requires Python 3.11 or newer, or the 'tomli' Python package") + + try: + with open(toolchains_file, 'rb') as fh: + toolchains = tomllib.load(fh) + except OSError as err: + msg = (f"Failed to read the file with supported toolchains {toolchains_file}{envvar_msg}: {err}. " + f"By default, it is expected next to the EasyBuild hooks file; its location can be configured " + f"through the environment variable {SUPPORTED_TOOLCHAINS_FILE_ENVVAR}.") + if envvar_msg and os.path.isfile(default_file): + msg += (f" Note that a file with supported toolchains does exist in the default location {default_file}. " + f"If that is the file you intended to use, unset {SUPPORTED_TOOLCHAINS_FILE_ENVVAR}.") + raise EasyBuildError(msg) + except ValueError as err: + raise EasyBuildError(f"The file with supported toolchains {toolchains_file}{envvar_msg} " + f"does not contain valid TOML: {err}") + + return { + eessi_version: [ + {'name': tc['name'], 'version': tc['version']} for tc in tcs + if EASYBUILD_VERSION >= tc.get('min_easybuild_version', '0') + ] + for eessi_version, tcs in toolchains.items() + } + + +EESSI_SUPPORTED_TOP_LEVEL_TOOLCHAINS = load_supported_top_level_toolchains() # Supported compute capabilities by CUDA toolkit version # Obtained by installing all CUDAs from 12.0.0 to 13.3.0, then using: diff --git a/eessi_supported_toolchains.toml b/eessi_supported_toolchains.toml new file mode 100644 index 00000000..f3734119 --- /dev/null +++ b/eessi_supported_toolchains.toml @@ -0,0 +1,28 @@ +# Top-level toolchains that are supported for installations in each EESSI version. +# This file is read by eb_hooks.py (see load_supported_top_level_toolchains()), and has to be installed next to it. +# +# Each key is an EESSI version, with a list of toolchains ('name' and 'version'). +# An optional 'min_easybuild_version' can be used for toolchains that are only supported when +# a sufficiently recent EasyBuild version is used (e.g. because older versions don't know the toolchain). + +# If you need to use this from a shell and don't have yq available, you can convert it to json on the fly using +# python -c "import tomllib, json; print(json.dumps(tomllib.load(open('input.toml','rb')), indent=2))" > output.json + +"2023.06" = [ + { name = "foss", version = "2022b" }, + { name = "foss", version = "2023a" }, + { name = "foss", version = "2023b" }, +] + +"2025.06" = [ + { name = "foss", version = "2024a" }, + { name = "foss", version = "2025a" }, + { name = "foss", version = "2025b" }, + { name = "lfoss", version = "2025b", min_easybuild_version = "5.2.0" }, + { name = "rompi", version = "2025a", min_easybuild_version = "5.3.1" }, +] + +"2026.06" = [ + { name = "foss", version = "2026.1" }, + { name = "lfoss", version = "2026.1" }, +] diff --git a/install_scripts.sh b/install_scripts.sh index 48745a3d..ae6a854b 100755 --- a/install_scripts.sh +++ b/install_scripts.sh @@ -222,11 +222,12 @@ if [[ -d ${host_injections_easystacks_dir} ]]; then copy_files_by_list ${host_injections_easystacks_dir} ${INSTALL_PREFIX}/scripts/gpu_support/nvidia/easystacks "${host_injections_easystacks[@]}" fi -# Copy over EasyBuild hooks file used for installations -hook_files=( +# Copy over EasyBuild hooks file used for installations (and the files it needs, which have to be located next to it) +easybuild_init_files=( eb_hooks.py + eessi_supported_toolchains.toml ) -copy_files_by_list ${TOPDIR} ${INSTALL_PREFIX}/init/easybuild "${hook_files[@]}" +copy_files_by_list ${TOPDIR} ${INSTALL_PREFIX}/init/easybuild "${easybuild_init_files[@]}" # replace version placeholders in scripts; # note: the commands below are always run, regardless of whether the scripts were changed, diff --git a/scripts/native_flags/check_native_flags.sh b/scripts/native_flags/check_native_flags.sh new file mode 100755 index 00000000..f966671a --- /dev/null +++ b/scripts/native_flags/check_native_flags.sh @@ -0,0 +1,234 @@ +#!/bin/bash +# +# Check that the compilers of all toolchains supported in the current EESSI version translate the "native" +# architecture flag (as used by EasyBuild) into *exactly* the same set of target flags on this build host as +# recorded in a reference for the current CPU target (EESSI_SOFTWARE_SUBDIR). +# +# This guards against having multiple build hosts for the same CPU target that (subtly) differ in which +# instruction set extensions the compilers detect, e.g. due to a different CPU stepping/SKU, different kernel +# version (on aarch64, detection relies on hwcaps in /proc/cpuinfo), or CPU features being masked by a hypervisor. +# If such hosts both build for the same CPU target, the result may be binaries that don't run on all +# systems of that CPU target. +# +# Rather than checking the CPU flags reported by lscpu (or similar), we ask the compiler driver itself what it +# resolves the native flag into, since that's what really matters. As this depends on the compiler version, +# references are stored per CPU target, compiler and compiler version, in: +# /references//-.txt +# +# For GCC, all -m* options passed by the driver to cc1 are taken into account (--param options like +# l1-cache-size are not, since they only affect tuning, and are more likely to differ between CPUs of the same type). +# For Clang, all -target-cpu, -tune-cpu, -target-abi and -target-feature options passed to clang -cc1 are taken +# into account. +# +# Requires an initialised EESSI environment (EESSI module loaded) and Lmod's module command. +# +# usage: check_native_flags.sh [--generate] +# +# --generate (re)generate the reference files for the CPU target of this host, rather than checking against them. +# +# Environment variables: +# EESSI_NATIVE_FLAGS_REFERENCE_DIR - override location of the reference files +# EESSI_NATIVE_FLAGS_ALLOW_MISSING_REFERENCE - if set, a missing reference file only results in a warning +# (by default, it is treated as an error) + +SCRIPT_DIR=$(dirname $(realpath ${BASH_SOURCE[0]})) +TOPDIR=$(realpath ${SCRIPT_DIR}/../..) + +source ${TOPDIR}/scripts/utils.sh + +REFERENCE_DIR=${EESSI_NATIVE_FLAGS_REFERENCE_DIR:-${SCRIPT_DIR}/references} + +generate=0 +while [[ $# -gt 0 ]]; do + case $1 in + --generate) + generate=1 + shift + ;; + -h|--help) + sed -n '2,/^$/p' ${BASH_SOURCE[0]} | sed 's/^# \{0,1\}//' + exit 0 + ;; + *) + fatal_error "Unknown argument: $1" + ;; + esac +done + +check_eessi_initialised +if [[ -z "${EESSI_VERSION}" ]]; then + fatal_error "\$EESSI_VERSION is not set!" +fi +if [[ "$(type -t module)" != "function" ]]; then + fatal_error "The 'module' command is not available!" +fi + +# Native architecture flag as used by EasyBuild (see COMPILER_OPTIMAL_ARCHITECTURE_OPTION +# in easybuild/toolchains/compiler/{gcc,clang,llvm_compilers}.py) +case $(uname -m) in + x86_64) + native_flag='-march=native' + ;; + aarch64|ppc64le) + native_flag='-mcpu=native' + ;; + *) + # RISC-V: GCC/Clang don't support a native flag, EasyBuild uses an explicit -march value there + echo_yellow ">> No native architecture flag known for $(uname -m), skipping check of native compiler flags" + exit 0 + ;; +esac + +# Print the target flags that the GCC driver passes to cc1 when using the native flag, one per line +function gcc_native_flags() { + local cc=$1 + local cc1_line + cc1_line=$(${cc} ${native_flag} -### -E - < /dev/null 2>&1 | awk '$1 ~ /\/cc1$/') + if [[ -z "${cc1_line}" ]]; then + return 1 + fi + # Drop quotes, then retain only -m* options (skipping '--param ') + echo "${cc1_line}" | tr -d '"' | tr -s ' ' '\n' | grep '^-m' +} + +# Print the target options that the Clang driver passes to clang -cc1 when using the native flag, one per line +function clang_native_flags() { + local cc=$1 + local cc1_line + cc1_line=$(${cc} ${native_flag} -### -c -x c - -o /dev/null < /dev/null 2>&1 | grep '"-cc1"') + if [[ -z "${cc1_line}" ]]; then + return 1 + fi + echo "${cc1_line}" | tr -d '"' | tr -s ' ' '\n' \ + | awk '/^-(target-cpu|tune-cpu|target-abi|target-feature)$/ { opt=$0; getline; print opt " " $0 }' +} + +# Check whether the given path is part of an installation provided by a loaded module (as opposed to a compiler +# provided by the compat layer, or the host) +function provided_by_module() { + local path=$1 + local root + for root in $(env | grep '^EBROOT' | cut -f2 -d=); do + if [[ -n "${root}" && "${path}" == "$(realpath ${root})/"* ]]; then + return 0 + fi + done + return 1 +} + +echo ">> Checking native compiler flags for CPU target ${EESSI_SOFTWARE_SUBDIR} (EESSI ${EESSI_VERSION})" +echo ">> Native architecture flag: ${native_flag}" + +# use the same file as eb_hooks.py (which can be configured through $EESSI_SUPPORTED_TOOLCHAINS_FILE) +supported_toolchains_file=${EESSI_SUPPORTED_TOOLCHAINS_FILE:-${TOPDIR}/eessi_supported_toolchains.toml} +toolchains=$(python3 ${SCRIPT_DIR}/get_supported_toolchains.py ${supported_toolchains_file} ${EESSI_VERSION}) +check_exit_code $? ">> Supported toolchains in EESSI ${EESSI_VERSION}: $(echo ${toolchains})" \ + "Failed to determine supported toolchains for EESSI ${EESSI_VERSION}" + +# Determine (unique) set of compilers, by loading each toolchain module (in a subshell) +# Each entry is ' ' +declare -A compilers +module_load_out=$(mktemp) +for toolchain in ${toolchains}; do + if ! module is-avail ${toolchain}; then + echo_yellow ">> WARNING: module for toolchain ${toolchain} is not available, skipping it" + continue + fi + found=$( + module load ${toolchain} > ${module_load_out} 2>&1 || exit 1 + for compiler_type in gcc clang; do + compiler=$(command -v ${compiler_type}) + if [[ -n "${compiler}" ]]; then + compiler=$(realpath ${compiler}) + if provided_by_module ${compiler}; then + echo "${compiler_type} ${compiler}" + fi + fi + done + ) + if [[ $? -ne 0 ]]; then + # This happens for toolchains that are deliberately not supported on this CPU target (e.g. foss/2022b on + # zen4 in EESSI 2023.06): the module then raises an error, which means it can't be used to build either + echo_yellow ">> WARNING: failed to load module for toolchain ${toolchain}, skipping it. Output of 'module load':" + sed 's/^/ /' ${module_load_out} + continue + fi + while read compiler_type compiler; do + if [[ -n "${compiler}" ]]; then + echo ">> Found ${compiler_type} compiler ${compiler} in toolchain ${toolchain}" + compilers[${compiler}]=${compiler_type} + fi + done <<< "${found}" +done +rm -f ${module_load_out} + +if [[ ${#compilers[@]} -eq 0 ]]; then + echo_yellow ">> WARNING: no compilers found to check native compiler flags for!" + exit 0 +fi + +reference_subdir=${REFERENCE_DIR}/${EESSI_SOFTWARE_SUBDIR} +errors=() +missing=() +for compiler in $(echo ${!compilers[@]} | tr ' ' '\n' | sort); do + compiler_type=${compilers[${compiler}]} + if [[ ${compiler_type} == "gcc" ]]; then + version=$(${compiler} -dumpfullversion) + else + version=$(${compiler} -dumpversion) + fi + if [[ -z "${version}" ]]; then + fatal_error "Failed to determine version of ${compiler}" + fi + + flags=$(${compiler_type}_native_flags ${compiler}) + if [[ $? -ne 0 || -z "${flags}" ]]; then + fatal_error "Failed to determine flags that '${native_flag}' translates to for ${compiler}" + fi + + reference_file=${reference_subdir}/${compiler_type}-${version}.txt + if [[ ${generate} -eq 1 ]]; then + mkdir -p ${reference_subdir} + echo "${flags}" > ${reference_file} + echo_green ">> Generated ${reference_file}" + elif [[ ! -f ${reference_file} ]]; then + echo_yellow ">> No reference found for ${compiler_type} ${version} (${reference_file})." + echo_yellow " '${native_flag}' translates to the following flags for ${compiler} on this host:" + echo "${flags}" | sed 's/^/ /' + echo_yellow "To create a reference file, simply copy the above list of flags (without indentation) into the file ${reference_file} and add that to the EESSI/software-layer-scripts repository." + missing+=("${reference_file}") + else + flags_diff=$(diff <(grep -v '^#' ${reference_file}) <(echo "${flags}")) + if [[ $? -eq 0 ]]; then + echo_green ">> Flags for ${compiler_type} ${version} match reference (${reference_file}):" + echo "${flags}" | sed 's/^/ /' + else + echo_red ">> Flags for ${compiler_type} ${version} DO NOT MATCH reference (${reference_file})!" + echo " Difference ('<' = reference, '>' = this host):" + echo "${flags_diff}" | sed 's/^/ /' + errors+=("${compiler_type} ${version}") + fi + fi +done + +if [[ ${#missing[@]} -gt 0 ]]; then + msg="No reference found for ${#missing[@]} compiler(s) for CPU target ${EESSI_SOFTWARE_SUBDIR}." + msg="${msg} These can be created by running '${BASH_SOURCE[0]} --generate' on a build host that is known to be" + msg="${msg} good, and adding the resulting files to the software-layer-scripts repository." + if [[ -n "${EESSI_NATIVE_FLAGS_ALLOW_MISSING_REFERENCE}" ]]; then + echo_yellow ">> WARNING: ${msg}" + else + msg="${msg} Set \$EESSI_NATIVE_FLAGS_ALLOW_MISSING_REFERENCE to only print a warning instead." + fatal_error "${msg}" + fi +fi + +if [[ ${#errors[@]} -gt 0 ]]; then + msg="Native compiler flags on this build host do not match the reference for CPU target" + msg="${msg} ${EESSI_SOFTWARE_SUBDIR} for: ${errors[*]}." + msg="${msg} Building on this host could result in binaries that are not compatible with other systems" + msg="${msg} of the same CPU target!" + fatal_error "${msg}" +fi + +echo_green ">> Native compiler flags check for CPU target ${EESSI_SOFTWARE_SUBDIR} completed" diff --git a/scripts/native_flags/get_supported_toolchains.py b/scripts/native_flags/get_supported_toolchains.py new file mode 100755 index 00000000..10239e20 --- /dev/null +++ b/scripts/native_flags/get_supported_toolchains.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python3 +# +# Print the top-level toolchains supported in a given EESSI version, one 'name/version' per line. +# +# The list is read from eessi_supported_toolchains.toml, which is also used by eb_hooks.py. +# Toolchains are included regardless of their 'min_easybuild_version' (that only determines whether the +# EasyBuild version being used can install that toolchain, which is irrelevant for determining which compilers are +# part of an EESSI version). +# Site-specific toplevel toolchains defined via $EESSI_SITE_TOP_LEVEL_TOOLCHAINS_ are included as well, +# in the same way as is done in eb_hooks.py. +# +# usage: get_supported_toolchains.py + +import json +import os +import sys + +try: + import tomllib # in the standard library since Python 3.11 +except ImportError: + try: + import tomli as tomllib # backport for older Python versions + except ImportError: + sys.stderr.write("ERROR: parsing TOML files requires Python 3.11 or newer, or the 'tomli' Python package\n") + sys.exit(1) + + +def get_toolchains(toolchains_file, eessi_version): + with open(toolchains_file, 'rb') as fh: + toolchains = tomllib.load(fh) + + if eessi_version not in toolchains: + sys.stderr.write(f"ERROR: no supported toolchains defined for EESSI version {eessi_version} " + f"in {toolchains_file}\n") + sys.exit(1) + + result = list(toolchains[eessi_version]) + + site_var = 'EESSI_SITE_TOP_LEVEL_TOOLCHAINS_' + eessi_version.replace('.', '_') + if os.getenv(site_var): + result.extend(json.loads(os.getenv(site_var))) + + return result + + +def main(): + if len(sys.argv) != 3: + sys.stderr.write(f"usage: {sys.argv[0]} \n") + sys.exit(1) + + seen = set() + for tc in get_toolchains(sys.argv[1], sys.argv[2]): + tc_mod = f"{tc['name']}/{tc['version']}" + if tc_mod not in seen: + seen.add(tc_mod) + print(tc_mod) + + +if __name__ == '__main__': + main() diff --git a/scripts/native_flags/references/aarch64/aws/graviton4/clang-21.1.8.txt b/scripts/native_flags/references/aarch64/aws/graviton4/clang-21.1.8.txt new file mode 100644 index 00000000..ff884e9a --- /dev/null +++ b/scripts/native_flags/references/aarch64/aws/graviton4/clang-21.1.8.txt @@ -0,0 +1,37 @@ +-target-cpu neoverse-v2 +-target-feature +sha2 +-target-feature +sve-sha3 +-target-feature +sve-aes +-target-feature +sha3 +-target-feature +aes +-target-feature +v9a +-target-feature +bf16 +-target-feature +ccidx +-target-feature +complxnum +-target-feature +crc +-target-feature +dotprod +-target-feature +ete +-target-feature +fp-armv8 +-target-feature +fp16fml +-target-feature +fpac +-target-feature +fullfp16 +-target-feature +i8mm +-target-feature +jsconv +-target-feature +lse +-target-feature +mte +-target-feature +neon +-target-feature +pauth +-target-feature +perfmon +-target-feature +rand +-target-feature +ras +-target-feature +rcpc +-target-feature +rdm +-target-feature +spe +-target-feature +ssbs +-target-feature +sve +-target-feature +sve-bitperm +-target-feature +sve2 +-target-feature +trbe +-target-abi aapcs +-target-feature +outline-atomics +-target-feature -fmv diff --git a/scripts/native_flags/references/aarch64/aws/graviton4/gcc-15.2.0.txt b/scripts/native_flags/references/aarch64/aws/graviton4/gcc-15.2.0.txt new file mode 100644 index 00000000..cae11b11 --- /dev/null +++ b/scripts/native_flags/references/aarch64/aws/graviton4/gcc-15.2.0.txt @@ -0,0 +1,5 @@ +-mno-fix-cortex-a53-835769 +-mno-fix-cortex-a53-843419 +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-v2+crc+sve2-aes+sve2-sha3+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/clang-20.1.8.txt b/scripts/native_flags/references/aarch64/neoverse_n1/clang-20.1.8.txt new file mode 100644 index 00000000..6dc9135b --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/clang-20.1.8.txt @@ -0,0 +1,19 @@ +-target-cpu neoverse-n1 +-target-feature +v8.2a +-target-feature +aes +-target-feature +crc +-target-feature +dotprod +-target-feature +fp-armv8 +-target-feature +fullfp16 +-target-feature +lse +-target-feature +neon +-target-feature +perfmon +-target-feature +ras +-target-feature +rcpc +-target-feature +rdm +-target-feature +sha2 +-target-feature +spe +-target-feature +ssbs +-target-abi aapcs +-target-feature +outline-atomics +-target-feature -fmv diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/clang-21.1.8.txt b/scripts/native_flags/references/aarch64/neoverse_n1/clang-21.1.8.txt new file mode 100644 index 00000000..6dc9135b --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/clang-21.1.8.txt @@ -0,0 +1,19 @@ +-target-cpu neoverse-n1 +-target-feature +v8.2a +-target-feature +aes +-target-feature +crc +-target-feature +dotprod +-target-feature +fp-armv8 +-target-feature +fullfp16 +-target-feature +lse +-target-feature +neon +-target-feature +perfmon +-target-feature +ras +-target-feature +rcpc +-target-feature +rdm +-target-feature +sha2 +-target-feature +spe +-target-feature +ssbs +-target-abi aapcs +-target-feature +outline-atomics +-target-feature -fmv diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.2.0.txt new file mode 100644 index 00000000..622bf3d7 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=ares+crypto+ssbs+noprofile diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.3.0.txt new file mode 100644 index 00000000..622bf3d7 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-12.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=ares+crypto+ssbs+noprofile diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.2.0.txt new file mode 100644 index 00000000..9e7621bf --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=ares+crc+crypto+ssbs diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.3.0.txt new file mode 100644 index 00000000..b1030cd5 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-13.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-n1+crc+crypto+ssbs diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.2.0.txt new file mode 100644 index 00000000..b1030cd5 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-n1+crc+crypto+ssbs diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.3.0.txt new file mode 100644 index 00000000..b1030cd5 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-14.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-n1+crc+crypto+ssbs diff --git a/scripts/native_flags/references/aarch64/neoverse_n1/gcc-15.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-15.2.0.txt new file mode 100644 index 00000000..6e5474cf --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_n1/gcc-15.2.0.txt @@ -0,0 +1,5 @@ +-mno-fix-cortex-a53-835769 +-mno-fix-cortex-a53-843419 +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-n1+crc+crypto+ssbs diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/clang-20.1.8.txt b/scripts/native_flags/references/aarch64/neoverse_v1/clang-20.1.8.txt new file mode 100644 index 00000000..44bb70f7 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/clang-20.1.8.txt @@ -0,0 +1,32 @@ +-target-cpu neoverse-v1 +-target-feature +v8.4a +-target-feature +aes +-target-feature +bf16 +-target-feature +ccdp +-target-feature +ccidx +-target-feature +ccpp +-target-feature +complxnum +-target-feature +crc +-target-feature +dotprod +-target-feature +fp-armv8 +-target-feature +fp16fml +-target-feature +fullfp16 +-target-feature +i8mm +-target-feature +jsconv +-target-feature +lse +-target-feature +neon +-target-feature +pauth +-target-feature +perfmon +-target-feature +rand +-target-feature +ras +-target-feature +rcpc +-target-feature +rdm +-target-feature +sha2 +-target-feature +sha3 +-target-feature +sm4 +-target-feature +spe +-target-feature +ssbs +-target-feature +sve +-target-abi aapcs +-target-feature +outline-atomics +-target-feature -fmv diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/clang-21.1.8.txt b/scripts/native_flags/references/aarch64/neoverse_v1/clang-21.1.8.txt new file mode 100644 index 00000000..44bb70f7 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/clang-21.1.8.txt @@ -0,0 +1,32 @@ +-target-cpu neoverse-v1 +-target-feature +v8.4a +-target-feature +aes +-target-feature +bf16 +-target-feature +ccdp +-target-feature +ccidx +-target-feature +ccpp +-target-feature +complxnum +-target-feature +crc +-target-feature +dotprod +-target-feature +fp-armv8 +-target-feature +fp16fml +-target-feature +fullfp16 +-target-feature +i8mm +-target-feature +jsconv +-target-feature +lse +-target-feature +neon +-target-feature +pauth +-target-feature +perfmon +-target-feature +rand +-target-feature +ras +-target-feature +rcpc +-target-feature +rdm +-target-feature +sha2 +-target-feature +sha3 +-target-feature +sm4 +-target-feature +spe +-target-feature +ssbs +-target-feature +sve +-target-abi aapcs +-target-feature +outline-atomics +-target-feature -fmv diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.2.0.txt new file mode 100644 index 00000000..97765490 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=zeus+crypto+sha3+sm4+nodotprod+noprofile+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.3.0.txt new file mode 100644 index 00000000..0a7b3d8b --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-12.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=zeus+crypto+sha3+sm4+noprofile+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.2.0.txt new file mode 100644 index 00000000..3c061564 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=zeus+crc+aes+sha3+sm4+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.3.0.txt new file mode 100644 index 00000000..cbf5f31d --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-13.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-v1+crc+aes+sha3+sm4+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.2.0.txt new file mode 100644 index 00000000..dc13890f --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.2.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-v1+sm4+crc+aes+sha3+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.3.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.3.0.txt new file mode 100644 index 00000000..dc13890f --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-14.3.0.txt @@ -0,0 +1,3 @@ +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-v1+sm4+crc+aes+sha3+nopauth diff --git a/scripts/native_flags/references/aarch64/neoverse_v1/gcc-15.2.0.txt b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-15.2.0.txt new file mode 100644 index 00000000..e9c467c0 --- /dev/null +++ b/scripts/native_flags/references/aarch64/neoverse_v1/gcc-15.2.0.txt @@ -0,0 +1,5 @@ +-mno-fix-cortex-a53-835769 +-mno-fix-cortex-a53-843419 +-mlittle-endian +-mabi=lp64 +-mcpu=neoverse-v1+sm4+crc+aes+sha3+nopauth diff --git a/scripts/native_flags/references/x86_64/amd/zen2/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen2/clang-20.1.8.txt new file mode 100644 index 00000000..0d1d08d4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/clang-20.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu znver2 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature -invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen2/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen2/clang-21.1.8.txt new file mode 100644 index 00000000..0d1d08d4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/clang-21.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu znver2 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature -invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.2.0.txt new file mode 100644 index 00000000..62b49c6d --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.3.0.txt new file mode 100644 index 00000000..62b49c6d --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.2.0.txt new file mode 100644 index 00000000..58fc4178 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.3.0.txt new file mode 100644 index 00000000..58fc4178 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.2.0.txt new file mode 100644 index 00000000..77fccfaf --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.3.0.txt new file mode 100644 index 00000000..77fccfaf --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen2/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen2/gcc-15.2.0.txt new file mode 100644 index 00000000..641c734c --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen2/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=znver2 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=znver2 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen3/clang-20.1.8.txt new file mode 100644 index 00000000..a914e94c --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/clang-20.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu znver3 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature +vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen3/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen3/clang-21.1.8.txt new file mode 100644 index 00000000..a914e94c --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/clang-21.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu znver3 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature +vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.2.0.txt new file mode 100644 index 00000000..9380366c --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.3.0.txt new file mode 100644 index 00000000..9380366c --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.2.0.txt new file mode 100644 index 00000000..6897366e --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.3.0.txt new file mode 100644 index 00000000..6897366e --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.2.0.txt new file mode 100644 index 00000000..71ab99f1 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.3.0.txt new file mode 100644 index 00000000..71ab99f1 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen3/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen3/gcc-15.2.0.txt new file mode 100644 index 00000000..883fb0fc --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen3/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=znver3 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mvpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=znver3 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen4/clang-20.1.8.txt new file mode 100644 index 00000000..d529f19d --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/clang-20.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu znver4 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature +avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen4/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/amd/zen4/clang-21.1.8.txt new file mode 100644 index 00000000..d529f19d --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/clang-21.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu znver4 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature +avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature +clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature +rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature +sse4a diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-12.3.0.txt new file mode 100644 index 00000000..624da582 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.2.0.txt new file mode 100644 index 00000000..a88df381 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.3.0.txt new file mode 100644 index 00000000..a88df381 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.2.0.txt new file mode 100644 index 00000000..f5b46433 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.3.0.txt new file mode 100644 index 00000000..f5b46433 --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/amd/zen4/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/amd/zen4/gcc-15.2.0.txt new file mode 100644 index 00000000..047c1b4a --- /dev/null +++ b/scripts/native_flags/references/x86_64/amd/zen4/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=znver4 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-msse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mclzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=znver4 diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/clang-20.1.8.txt new file mode 100644 index 00000000..5fe07976 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/clang-20.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu cascadelake +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature -vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/clang-21.1.8.txt new file mode 100644 index 00000000..5fe07976 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/clang-21.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu cascadelake +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature -vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.2.0.txt new file mode 100644 index 00000000..eff11d0e --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.3.0.txt new file mode 100644 index 00000000..eff11d0e --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.2.0.txt new file mode 100644 index 00000000..0e64f848 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.3.0.txt new file mode 100644 index 00000000..0e64f848 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.2.0.txt new file mode 100644 index 00000000..87b28120 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.3.0.txt new file mode 100644 index 00000000..87b28120 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-15.2.0.txt new file mode 100644 index 00000000..74ff46b8 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/cascadelake/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=cascadelake +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mavx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=cascadelake diff --git a/scripts/native_flags/references/x86_64/intel/haswell/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/intel/haswell/clang-20.1.8.txt new file mode 100644 index 00000000..46e2bbce --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/clang-20.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu haswell +-target-feature -prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature -xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature -adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature -clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature -clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature -rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/haswell/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/intel/haswell/clang-21.1.8.txt new file mode 100644 index 00000000..46e2bbce --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/clang-21.1.8.txt @@ -0,0 +1,118 @@ +-target-cpu haswell +-target-feature -prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature -xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature -xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature -avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature -sha512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature -adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -vpclmulqdq +-target-feature -avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature -clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature -avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature -avx512bw +-target-feature +sse3 +-target-feature -pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature -clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature -rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature -avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.2.0.txt new file mode 100644 index 00000000..deaa1d8d --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.3.0.txt new file mode 100644 index 00000000..deaa1d8d --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.2.0.txt new file mode 100644 index 00000000..212139d5 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.3.0.txt new file mode 100644 index 00000000..212139d5 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prefetchwt1 +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.2.0.txt new file mode 100644 index 00000000..1b65f5bb --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.3.0.txt new file mode 100644 index 00000000..1b65f5bb --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/haswell/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/intel/haswell/gcc-15.2.0.txt new file mode 100644 index 00000000..5be539e1 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/haswell/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=haswell +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mno-avx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mno-avx512vl +-mno-avx512bw +-mno-avx512dq +-mno-avx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-mno-adx +-mabm +-mno-cldemote +-mno-clflushopt +-mno-clwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mno-pku +-mno-prfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mno-rdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mno-xsavec +-mxsaveopt +-mno-xsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=haswell diff --git a/scripts/native_flags/references/x86_64/intel/icelake/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/intel/icelake/clang-20.1.8.txt new file mode 100644 index 00000000..6b6a6be2 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/clang-20.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu icelake-server +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/icelake/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/intel/icelake/clang-21.1.8.txt new file mode 100644 index 00000000..6b6a6be2 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/clang-21.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu icelake-server +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.2.0.txt new file mode 100644 index 00000000..a6c218b4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.3.0.txt new file mode 100644 index 00000000..a6c218b4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.2.0.txt new file mode 100644 index 00000000..55519fc4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.3.0.txt new file mode 100644 index 00000000..55519fc4 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.2.0.txt new file mode 100644 index 00000000..f312a1e5 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.3.0.txt new file mode 100644 index 00000000..f312a1e5 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/icelake/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/intel/icelake/gcc-15.2.0.txt new file mode 100644 index 00000000..fa45cec2 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/icelake/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=icelake-server +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mno-waitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=icelake-server diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-20.1.8.txt new file mode 100644 index 00000000..90839fa3 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-20.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu sapphirerapids +-target-feature +prfchw +-target-feature +cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature +avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature +amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature +avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature +movdiri +-target-feature +serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature +amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature +amx-bf16 +-target-feature +avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature +movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature +waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-21.1.8.txt new file mode 100644 index 00000000..90839fa3 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/clang-21.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu sapphirerapids +-target-feature +prfchw +-target-feature +cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature +avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature +avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature +avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature +amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature +avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature +movdiri +-target-feature +serialize +-target-feature -sha512 +-target-feature +vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature +amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature +gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature +amx-bf16 +-target-feature +avx512bf16 +-target-feature +avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature +sha +-target-feature +movdir64b +-target-feature -ppx +-target-feature +wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature +avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature +avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature +rdpid +-target-feature -fma4 +-target-feature +avx512vbmi +-target-feature -shstk +-target-feature +vaes +-target-feature +waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.2.0.txt new file mode 100644 index 00000000..c3f9ce14 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.3.0.txt new file mode 100644 index 00000000..c3f9ce14 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.2.0.txt new file mode 100644 index 00000000..65bee2cc --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.3.0.txt new file mode 100644 index 00000000..65bee2cc --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mavx512vbmi +-mavx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.2.0.txt new file mode 100644 index 00000000..8e093cef --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.3.0.txt new file mode 100644 index 00000000..8e093cef --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-15.2.0.txt new file mode 100644 index 00000000..60db8a0b --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/sapphirerapids/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=sapphirerapids +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mavx512vbmi +-mavx512ifma +-mavx512vpopcntdq +-mavx512vbmi2 +-mgfni +-mvpclmulqdq +-mavx512vnni +-mavx512bitalg +-mavx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mcldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mmovdir64b +-mmovdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mrdpid +-mrdrnd +-mrdseed +-mno-rtm +-mserialize +-mno-sgx +-msha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mvaes +-mwaitpkg +-mwbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mamx-tile +-mamx-int8 +-mamx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mavxvnni +-mavx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=sapphirerapids diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-20.1.8.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-20.1.8.txt new file mode 100644 index 00000000..1fb4b5d8 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-20.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu skylake-avx512 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature -vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-21.1.8.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-21.1.8.txt new file mode 100644 index 00000000..1fb4b5d8 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/clang-21.1.8.txt @@ -0,0 +1,119 @@ +-target-cpu skylake-avx512 +-target-feature +prfchw +-target-feature -cldemote +-target-feature +avx +-target-feature +aes +-target-feature +sahf +-target-feature +pclmul +-target-feature -xop +-target-feature +crc32 +-target-feature -amx-fp8 +-target-feature +xsaves +-target-feature -avx512fp16 +-target-feature -usermsr +-target-feature -sm4 +-target-feature -egpr +-target-feature +sse4.1 +-target-feature -avx512ifma +-target-feature +xsave +-target-feature +sse4.2 +-target-feature -tsxldtrk +-target-feature -sm3 +-target-feature -ptwrite +-target-feature -widekl +-target-feature -movrs +-target-feature +invpcid +-target-feature +64bit +-target-feature +xsavec +-target-feature -avx10.1-512 +-target-feature -avx512vpopcntdq +-target-feature +cmov +-target-feature -avx512vp2intersect +-target-feature +avx512cd +-target-feature +movbe +-target-feature -avxvnniint8 +-target-feature -ccmp +-target-feature -amx-int8 +-target-feature -kl +-target-feature -avx10.1-256 +-target-feature +evex512 +-target-feature -avxvnni +-target-feature -rtm +-target-feature +adx +-target-feature +avx2 +-target-feature -hreset +-target-feature -movdiri +-target-feature -serialize +-target-feature -sha512 +-target-feature -vpclmulqdq +-target-feature +avx512vl +-target-feature -uintr +-target-feature -cf +-target-feature +clflushopt +-target-feature -raoint +-target-feature -cmpccxadd +-target-feature +bmi +-target-feature -amx-tile +-target-feature +sse +-target-feature -avx10.2-256 +-target-feature -gfni +-target-feature -avxvnniint16 +-target-feature -amx-fp16 +-target-feature -zu +-target-feature -ndd +-target-feature +xsaveopt +-target-feature +rdrnd +-target-feature +avx512f +-target-feature -amx-bf16 +-target-feature -avx512bf16 +-target-feature -avx512vnni +-target-feature -push2pop2 +-target-feature +cx8 +-target-feature +avx512bw +-target-feature +sse3 +-target-feature +pku +-target-feature -nf +-target-feature -amx-tf32 +-target-feature -amx-avx512 +-target-feature +fsgsbase +-target-feature -clzero +-target-feature -mwaitx +-target-feature -lwp +-target-feature +lzcnt +-target-feature -sha +-target-feature -movdir64b +-target-feature -ppx +-target-feature -wbnoinvd +-target-feature -enqcmd +-target-feature -amx-transpose +-target-feature -avx10.2-512 +-target-feature -avxneconvert +-target-feature -tbm +-target-feature -pconfig +-target-feature -amx-complex +-target-feature +ssse3 +-target-feature +cx16 +-target-feature +bmi2 +-target-feature +fma +-target-feature +popcnt +-target-feature -avxifma +-target-feature +f16c +-target-feature -avx512bitalg +-target-feature -rdpru +-target-feature +clwb +-target-feature +mmx +-target-feature +sse2 +-target-feature +rdseed +-target-feature -avx512vbmi2 +-target-feature -prefetchi +-target-feature -amx-movrs +-target-feature -rdpid +-target-feature -fma4 +-target-feature -avx512vbmi +-target-feature -shstk +-target-feature -vaes +-target-feature -waitpkg +-target-feature -sgx +-target-feature +fxsr +-target-feature +avx512dq +-target-feature -sse4a diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.2.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.2.0.txt new file mode 100644 index 00000000..0864ecbb --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.2.0.txt @@ -0,0 +1,90 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.3.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.3.0.txt new file mode 100644 index 00000000..0864ecbb --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-12.3.0.txt @@ -0,0 +1,90 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.2.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.2.0.txt new file mode 100644 index 00000000..05474a61 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.2.0.txt @@ -0,0 +1,98 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.3.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.3.0.txt new file mode 100644 index 00000000..05474a61 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-13.3.0.txt @@ -0,0 +1,98 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512er +-mno-avx512pf +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx5124vnniw +-mno-avx5124fmaps +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mno-prefetchwt1 +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.2.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.2.0.txt new file mode 100644 index 00000000..17102919 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.2.0.txt @@ -0,0 +1,99 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.3.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.3.0.txt new file mode 100644 index 00000000..17102919 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-14.3.0.txt @@ -0,0 +1,99 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mtune=skylake-avx512 diff --git a/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-15.2.0.txt b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-15.2.0.txt new file mode 100644 index 00000000..58206789 --- /dev/null +++ b/scripts/native_flags/references/x86_64/intel/skylake_avx512/gcc-15.2.0.txt @@ -0,0 +1,106 @@ +-march=skylake-avx512 +-mmmx +-mpopcnt +-msse +-msse2 +-msse3 +-mssse3 +-msse4.1 +-msse4.2 +-mavx +-mavx2 +-mno-sse4a +-mno-fma4 +-mno-xop +-mfma +-mavx512f +-mbmi +-mbmi2 +-maes +-mpclmul +-mavx512vl +-mavx512bw +-mavx512dq +-mavx512cd +-mno-avx512vbmi +-mno-avx512ifma +-mno-avx512vpopcntdq +-mno-avx512vbmi2 +-mno-gfni +-mno-vpclmulqdq +-mno-avx512vnni +-mno-avx512bitalg +-mno-avx512bf16 +-mno-avx512vp2intersect +-mno-3dnow +-madx +-mabm +-mno-cldemote +-mclflushopt +-mclwb +-mno-clzero +-mcx16 +-mno-enqcmd +-mf16c +-mfsgsbase +-mfxsr +-mno-hle +-msahf +-mno-lwp +-mlzcnt +-mmovbe +-mno-movdir64b +-mno-movdiri +-mno-mwaitx +-mno-pconfig +-mpku +-mprfchw +-mno-ptwrite +-mno-rdpid +-mrdrnd +-mrdseed +-mno-rtm +-mno-serialize +-mno-sgx +-mno-sha +-mno-shstk +-mno-tbm +-mno-tsxldtrk +-mno-vaes +-mno-waitpkg +-mno-wbnoinvd +-mxsave +-mxsavec +-mxsaveopt +-mxsaves +-mno-amx-tile +-mno-amx-int8 +-mno-amx-bf16 +-mno-uintr +-mno-hreset +-mno-kl +-mno-widekl +-mno-avxvnni +-mno-avx512fp16 +-mno-avxifma +-mno-avxvnniint8 +-mno-avxneconvert +-mno-cmpccxadd +-mno-amx-fp16 +-mno-prefetchi +-mno-raoint +-mno-amx-complex +-mno-avxvnniint16 +-mno-sm3 +-mno-sha512 +-mno-sm4 +-mno-apxf +-mno-usermsr +-mno-avx10.2 +-mno-amx-avx512 +-mno-amx-tf32 +-mno-amx-transpose +-mno-amx-fp8 +-mno-movrs +-mno-amx-movrs +-mtune=skylake-avx512 diff --git a/tests/eb_hooks/test_supported_toolchains.py b/tests/eb_hooks/test_supported_toolchains.py new file mode 100644 index 00000000..b0c18ce5 --- /dev/null +++ b/tests/eb_hooks/test_supported_toolchains.py @@ -0,0 +1,166 @@ +# Unit tests for the supported top-level toolchains (eessi_supported_toolchains.toml) +# and the function in eb_hooks.py that loads them. +# Requires EasyBuild to be importable, e.g.: pip install easybuild pytest +import os +import sys + +import pytest + +try: + import tomllib +except ImportError: # Python < 3.11 + import tomli as tomllib + +REPO_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.insert(0, REPO_ROOT) + +import eb_hooks # noqa: E402 +from easybuild.tools.build_log import EasyBuildError # noqa: E402 + +TOOLCHAINS_FILE = os.path.join(REPO_ROOT, 'eessi_supported_toolchains.toml') +ENVVAR = 'EESSI_SUPPORTED_TOOLCHAINS_FILE' + + +@pytest.fixture(autouse=True) +def clean_env(monkeypatch): + monkeypatch.delenv(ENVVAR, raising=False) + + +def write_file(path, content): + path.write_text(content) + return str(path) + + +def test_toml_format(): + """Check that the shipped TOML file has the expected structure.""" + with open(TOOLCHAINS_FILE, 'rb') as fh: + data = tomllib.load(fh) + + assert isinstance(data, dict) and data + for eessi_version, toolchains in data.items(): + assert isinstance(eessi_version, str) + assert isinstance(toolchains, list) and toolchains, f"No toolchains for {eessi_version}" + for tc in toolchains: + assert set(tc) <= {'name', 'version', 'min_easybuild_version'}, tc + assert isinstance(tc.get('name'), str) and tc['name'], tc + assert isinstance(tc.get('version'), str) and tc['version'], tc + if 'min_easybuild_version' in tc: + assert isinstance(tc['min_easybuild_version'], str), tc + # no duplicates + pairs = [(tc['name'], tc['version']) for tc in toolchains] + assert len(pairs) == len(set(pairs)), f"Duplicate toolchains for {eessi_version}" + + +DEFAULT_FILENAME = 'eessi_supported_toolchains.toml' + + +@pytest.fixture +def default_dir(monkeypatch, tmp_path): + """Make the 'directory of eb_hooks.py' (i.e. the default location of the TOML file) an empty temporary dir.""" + monkeypatch.setattr(eb_hooks, '__file__', str(tmp_path / 'eb_hooks.py')) + return tmp_path + + +def test_load_default_location(default_dir): + """Without the environment variable, the file next to eb_hooks.py is used.""" + write_file(default_dir / DEFAULT_FILENAME, ''' + "2099.01" = [ + # comments are the reason for using TOML + { name = "foo", version = "1" }, + { name = "bar", version = "2" }, + ] + "2099.02" = [{ name = "baz", version = "3" }] + ''') + assert eb_hooks.load_supported_top_level_toolchains() == { + '2099.01': [{'name': 'foo', 'version': '1'}, {'name': 'bar', 'version': '2'}], + '2099.02': [{'name': 'baz', 'version': '3'}], + } + + +@pytest.mark.parametrize('eb_version, expected', [ + ('4.9.0', ['always']), + ('5.2.0', ['always', 'since_5_2_0']), + ('5.2.1', ['always', 'since_5_2_0']), + ('5.3.0', ['always', 'since_5_2_0']), + ('5.3.1', ['always', 'since_5_2_0', 'since_5_3_1']), + ('6.0.0', ['always', 'since_5_2_0', 'since_5_3_1']), +]) +def test_min_easybuild_version(monkeypatch, default_dir, eb_version, expected): + """Toolchains with a 'min_easybuild_version' are only included for that EasyBuild version or newer.""" + write_file(default_dir / DEFAULT_FILENAME, ''' + "2099.01" = [ + { name = "always", version = "1" }, + { name = "since_5_2_0", version = "1", min_easybuild_version = "5.2.0" }, + { name = "since_5_3_1", version = "1", min_easybuild_version = "5.3.1" }, + ] + "2099.02" = [ + { name = "only_future", version = "1", min_easybuild_version = "99.0.0" }, + ] + ''') + monkeypatch.setattr(eb_hooks, 'EASYBUILD_VERSION', eb_version) + result = eb_hooks.load_supported_top_level_toolchains() + assert [tc['name'] for tc in result['2099.01']] == expected + # An EESSI version for which no toolchain is supported by this EasyBuild version is kept, with an empty list + assert result['2099.02'] == [] + # The minimum version is not part of the returned toolchain dicts + assert all(set(tc) == {'name', 'version'} for tcs in result.values() for tc in tcs) + + +def test_envvar_overrides_location(monkeypatch, default_dir, tmp_path): + write_file(default_dir / DEFAULT_FILENAME, '"2099.01" = [{ name = "default", version = "1" }]') + custom = write_file(tmp_path / 'custom.toml', '"2099.01" = [{ name = "custom", version = "1" }]') + monkeypatch.setenv(ENVVAR, custom) + assert eb_hooks.load_supported_top_level_toolchains() == {'2099.01': [{'name': 'custom', 'version': '1'}]} + + +def test_envvar_missing_file(monkeypatch, default_dir, tmp_path): + default_file = write_file(default_dir / DEFAULT_FILENAME, '"2099.01" = []') + missing = str(tmp_path / 'does_not_exist.toml') + monkeypatch.setenv(ENVVAR, missing) + with pytest.raises(EasyBuildError) as excinfo: + eb_hooks.load_supported_top_level_toolchains() + msg = str(excinfo.value) + assert missing in msg + assert ENVVAR in msg + # a file exists in the default location, so the user should be pointed to it and told how to use it + assert default_file in msg + assert f"unset {ENVVAR}" in msg + + +def test_envvar_missing_file_no_default(monkeypatch, default_dir, tmp_path): + missing = str(tmp_path / 'does_not_exist.toml') + monkeypatch.setenv(ENVVAR, missing) + with pytest.raises(EasyBuildError) as excinfo: + eb_hooks.load_supported_top_level_toolchains() + msg = str(excinfo.value) + assert missing in msg + assert 'unset' not in msg + + +def test_missing_default_file(default_dir): + with pytest.raises(EasyBuildError) as excinfo: + eb_hooks.load_supported_top_level_toolchains() + msg = str(excinfo.value) + assert str(default_dir / DEFAULT_FILENAME) in msg + assert ENVVAR in msg # mentions how to configure the location + assert 'unset' not in msg + + +@pytest.mark.parametrize('use_envvar', [False, True]) +def test_invalid_toml(monkeypatch, default_dir, tmp_path, use_envvar): + if use_envvar: + bad = write_file(tmp_path / 'bad.toml', '"2099.01" = [') + monkeypatch.setenv(ENVVAR, bad) + else: + bad = write_file(default_dir / DEFAULT_FILENAME, '"2099.01" = [') + with pytest.raises(EasyBuildError, match='does not contain valid TOML') as excinfo: + eb_hooks.load_supported_top_level_toolchains() + assert bad in str(excinfo.value) + + +def test_no_toml_support(monkeypatch, default_dir): + """A clear error is raised if there is no TOML parser available (Python < 3.11 without tomli).""" + write_file(default_dir / DEFAULT_FILENAME, '"2099.01" = []') + monkeypatch.setattr(eb_hooks, 'tomllib', None) + with pytest.raises(EasyBuildError, match='tomli'): + eb_hooks.load_supported_top_level_toolchains()