aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>2005-05-07 18:51:50 +0000
committerDavid Edelsohn <edelsohn@gnu.org>2005-05-07 18:51:50 +0000
commitb6a21866eff301bbc061c9bc17bf8178dfbb5a55 (patch)
treec6abedb6e62186f219350abb5c2bc2b793b9e1a6 /gcc/configure
parent2073189362d5fde67f8930991b843d47c79067ee (diff)
* config.gcc ({powerpc,rs6000}-ibm-aix*): Remove rs6000/aix.opt
from extra_options. * config.in (HAVE_AS_POPCNTB): New. * configure.ac (HAVE_AS_MFCRF): Add .machine "pwr5" to AIX test. (HAVE_AS_POPCNTB): New. * configure: Regenerated. * config/rs6000/aix.h (TARGET_XL_COMPAT): Delete. * config/rs6000/rs6000.c (rs6000_override_options, power5): Add MASK_POPCNTB. Uncomment rs6000_sched_restricted_insns_priority and rs6000_sched_costly_dep. * config/rs6000/rs6000.h (TARGET_POPCNTB): New. (TARGET_XL_COMPAT): Delete. * config/rs6000/rs6000.md (UNSPEC_POPCNTB): New. (popcount<mode>2): New. (popcntb<mode>2): New. * config/rs6000/rs6000.opt (mpopcntb): New. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@99356 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/configure')
-rwxr-xr-xgcc/configure50
1 files changed, 49 insertions, 1 deletions
diff --git a/gcc/configure b/gcc/configure
index 4c4f3171d9a..c742fa11849 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -14582,7 +14582,8 @@ fi
powerpc*-*-*)
case $target in
- *-*-aix*) conftest_s=' .csect .text[PR]
+ *-*-aix*) conftest_s=' .machine "pwr5"
+ .csect .text[PR]
mfcr 3,128';;
*-*-darwin*)
echo "$as_me:$LINENO: checking assembler for .machine directive support" >&5
@@ -14659,6 +14660,53 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
fi
+
+ case $target in
+ *-*-aix*) conftest_s=' .machine "pwr5"
+ .csect .text[PR]
+ popcntb 3,3';;
+ *) conftest_s=' .machine power5
+ .text
+ popcntb 3,3';;
+ esac
+
+ echo "$as_me:$LINENO: checking assembler for popcntb support" >&5
+echo $ECHO_N "checking assembler for popcntb support... $ECHO_C" >&6
+if test "${gcc_cv_as_powerpc_popcntb+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ gcc_cv_as_powerpc_popcntb=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 17 \) \* 1000 + 0`
+ then gcc_cv_as_powerpc_popcntb=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ echo "$conftest_s" > conftest.s
+ if { ac_try='$gcc_cv_as -o conftest.o conftest.s >&5'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }
+ then
+ gcc_cv_as_powerpc_popcntb=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+echo "$as_me:$LINENO: result: $gcc_cv_as_powerpc_popcntb" >&5
+echo "${ECHO_T}$gcc_cv_as_powerpc_popcntb" >&6
+if test $gcc_cv_as_powerpc_popcntb = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_AS_POPCNTB 1
+_ACEOF
+
+fi
+
;;
mips*-*-*)