|
| 1 | +--- configure.sh 2024-03-02 19:37:00.000000000 +0000 |
| 2 | ++++ configure.sh 2024-03-02 19:01:25.000000000 +0000 |
| 3 | +@@ -980,33 +980,16 @@ |
| 4 | + case ${toolchain} in |
| 5 | + arm*) |
| 6 | + soft_enable runtime_cpu_detect |
| 7 | +- # Arm ISA extensions are treated as supersets. |
| 8 | +- case ${tgt_isa} in |
| 9 | +- arm64|armv8) |
| 10 | +- for ext in ${ARCH_EXT_LIST_AARCH64}; do |
| 11 | +- # Disable higher order extensions to simplify dependencies. |
| 12 | +- if [ "$disable_exts" = "yes" ]; then |
| 13 | +- if ! disabled $ext; then |
| 14 | +- RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} " |
| 15 | +- disable_feature $ext |
| 16 | +- fi |
| 17 | +- elif disabled $ext; then |
| 18 | +- disable_exts="yes" |
| 19 | +- else |
| 20 | +- soft_enable $ext |
| 21 | +- fi |
| 22 | +- done |
| 23 | +- ;; |
| 24 | +- armv7|armv7s) |
| 25 | +- soft_enable neon |
| 26 | +- # Only enable neon_asm when neon is also enabled. |
| 27 | +- enabled neon && soft_enable neon_asm |
| 28 | +- # If someone tries to force it through, die. |
| 29 | +- if disabled neon && enabled neon_asm; then |
| 30 | +- die "Disabling neon while keeping neon-asm is not supported" |
| 31 | +- fi |
| 32 | +- ;; |
| 33 | +- esac |
| 34 | ++ |
| 35 | ++ if [ ${tgt_isa} = "armv7" ] || [ ${tgt_isa} = "armv7s" ]; then |
| 36 | ++ soft_enable neon |
| 37 | ++ # Only enable neon_asm when neon is also enabled. |
| 38 | ++ enabled neon && soft_enable neon_asm |
| 39 | ++ # If someone tries to force it through, die. |
| 40 | ++ if disabled neon && enabled neon_asm; then |
| 41 | ++ die "Disabling neon while keeping neon-asm is not supported" |
| 42 | ++ fi |
| 43 | ++ fi |
| 44 | + |
| 45 | + asm_conversion_cmd="cat" |
| 46 | + |
| 47 | +@@ -1228,6 +1211,33 @@ |
| 48 | + fi |
| 49 | + ;; |
| 50 | + esac |
| 51 | ++ # AArch64 ISA extensions are treated as supersets. |
| 52 | ++ if [ ${tgt_isa} = "arm64" ] || [ ${tgt_isa} = "armv8" ]; then |
| 53 | ++ aarch64_arch_flag_neon="arch=armv8-a" |
| 54 | ++ aarch64_arch_flag_neon_dotprod="arch=armv8.2-a+dotprod" |
| 55 | ++ aarch64_arch_flag_neon_i8mm="arch=armv8.2-a+dotprod+i8mm" |
| 56 | ++ aarch64_arch_flag_sve="arch=armv8.2-a+dotprod+i8mm+sve" |
| 57 | ++ for ext in ${ARCH_EXT_LIST_AARCH64}; do |
| 58 | ++ if [ "$disable_exts" = "yes" ]; then |
| 59 | ++ RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} " |
| 60 | ++ soft_disable $ext |
| 61 | ++ else |
| 62 | ++ # Check the compiler supports the -march flag for the extension. |
| 63 | ++ # This needs to happen after toolchain/OS inspection so we handle |
| 64 | ++ # $CROSS etc correctly when checking for flags, else these will |
| 65 | ++ # always fail. |
| 66 | ++ flag="$(eval echo \$"aarch64_arch_flag_${ext}")" |
| 67 | ++ check_gcc_machine_option "${flag}" "${ext}" |
| 68 | ++ if ! enabled $ext; then |
| 69 | ++ # Disable higher order extensions to simplify dependencies. |
| 70 | ++ disable_exts="yes" |
| 71 | ++ RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} " |
| 72 | ++ soft_disable $ext |
| 73 | ++ fi |
| 74 | ++ fi |
| 75 | ++ done |
| 76 | ++ check_neon_sve_bridge_compiles |
| 77 | ++ fi |
| 78 | + ;; |
| 79 | + mips*) |
| 80 | + link_with_cc=gcc |
0 commit comments