2011-06-22 Nathan Sidwell * config/arm/arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect typo. * config.gcc (arm*-*-linux*): Default to gnu tls. (arm*-*-*): Add --with-tls option. (all_defaults): Add 'tls'. Index: config.gcc =================================================================== --- config.gcc (revision 175297) +++ config.gcc (working copy) @@ -863,6 +863,7 @@ tmake_file="$tmake_file arm/t-linux" ;; esac + with_tls=${with_tls:-gnu} tm_file="$tm_file arm/aout.h arm/arm.h" tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; @@ -3039,7 +3040,7 @@ ;; arm*-*-*) - supported_defaults="arch cpu float tune fpu abi mode" + supported_defaults="arch cpu float tune fpu abi mode tls" for which in cpu tune; do # See if it matches any of the entries in arm-cores.def eval "val=\$with_$which" @@ -3122,6 +3123,17 @@ ;; esac + case "$with_tls" in + "" \ + | gnu | gnu2) + # OK + ;; + *) + echo "Unknown TLS method used in --with-tls=$with_tls" 1>&2 + exit 1 + ;; + esac + if test "x$with_arch" != x && test "x$with_cpu" != x; then echo "Warning: --with-arch overrides --with-cpu=$with_cpu" 1>&2 fi @@ -3601,7 +3613,7 @@ esac t= -all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci" +all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci tls" for option in $all_defaults do eval "val=\$with_"`echo $option | sed s/-/_/g` Index: config/arm/arm.h =================================================================== --- config/arm/arm.h (revision 175297) +++ config/arm/arm.h (working copy) @@ -324,7 +324,7 @@ {"fpu", "%{!mfpu=*:-mfpu=%(VALUE)}"}, \ {"abi", "%{!mabi=*:-mabi=%(VALUE)}"}, \ {"mode", "%{!marm:%{!mthumb:-m%(VALUE)}}"}, \ - {"tls", "%{!mtls-dialect:-mtls-dialect=%(VALUE)}"}, + {"tls", "%{!mtls-dialect=*:-mtls-dialect=%(VALUE)}"}, /* Which floating point model to use. */ enum arm_fp_model