From f2bfeadf7200d607606d53ef5e72d301aac1cf58 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 28 May 2004 21:19:35 +0000 Subject: Update. 2004-05-28 Steven Munroe * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine "altivec" to enable VMX instructions. * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise. * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise. --- sysdeps/powerpc/configure | 38 ++++++++++++++++++++++++ sysdeps/powerpc/configure.in | 21 +++++++++++++ sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S | 1 + sysdeps/powerpc/powerpc32/fpu/setjmp-common.S | 2 +- sysdeps/powerpc/powerpc64/__longjmp-common.S | 1 + sysdeps/powerpc/powerpc64/setjmp-common.S | 1 + 6 files changed, 63 insertions(+), 1 deletion(-) create mode 100755 sysdeps/powerpc/configure create mode 100644 sysdeps/powerpc/configure.in (limited to 'sysdeps/powerpc') diff --git a/sysdeps/powerpc/configure b/sysdeps/powerpc/configure new file mode 100755 index 0000000000..07e3d091b1 --- /dev/null +++ b/sysdeps/powerpc/configure @@ -0,0 +1,38 @@ +# This file is generated from configure.in by Autoconf. DO NOT EDIT! + # Local configure fragment for sysdeps/powerpc. + +# Accept binutils which knows about ".machine". +echo "$as_me:$LINENO: checking for .machine support" >&5 +echo $ECHO_N "checking for .machine support... $ECHO_C" >&6 +if test "${libc_cv_ppc_machine+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat > conftest.s <<\EOF + .machine "altivec" + blr +EOF +if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&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 + libc_cv_ppc_machine=yes +else + libc_cv_ppc_machine=no +fi +rm -f conftest* +fi +echo "$as_me:$LINENO: result: $libc_cv_ppc_machine" >&5 +echo "${ECHO_T}$libc_cv_ppc_machine" >&6 +if test $libc_cv_ppc_machine != yes; then + { { echo "$as_me:$LINENO: error: +*** A binutils version which can handle +*** .machine \"altivec\" +*** is needed." >&5 +echo "$as_me: error: +*** A binutils version which can handle +*** .machine \"altivec\" +*** is needed." >&2;} + { (exit 1); exit 1; }; } +fi diff --git a/sysdeps/powerpc/configure.in b/sysdeps/powerpc/configure.in new file mode 100644 index 0000000000..28cc85934d --- /dev/null +++ b/sysdeps/powerpc/configure.in @@ -0,0 +1,21 @@ +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/powerpc. + +# Accept binutils which knows about ".machine". +AC_CACHE_CHECK(for .machine support, libc_cv_ppc_machine, [dnl +cat > conftest.s <<\EOF + .machine "altivec" + blr +EOF +if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then + libc_cv_ppc_machine=yes +else + libc_cv_ppc_machine=no +fi +rm -f conftest*]) +if test $libc_cv_ppc_machine != yes; then + AC_MSG_ERROR([ +*** A binutils version which can handle +*** .machine "altivec" +*** is needed.]) +fi diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S index dbb28aef21..b61e127a99 100644 --- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S +++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S @@ -28,6 +28,7 @@ #include #include + .machine "altivec" ENTRY (BP_SYM (__longjmp)) CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) #ifndef __NO_VMX__ diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S index 6f63512e61..796d24f25c 100644 --- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S +++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S @@ -28,7 +28,7 @@ #include #include - + .machine "altivec" ENTRY (BP_SYM (__sigsetjmp)) CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) diff --git a/sysdeps/powerpc/powerpc64/__longjmp-common.S b/sysdeps/powerpc/powerpc64/__longjmp-common.S index 0e2f0d580f..b6a2b79e55 100644 --- a/sysdeps/powerpc/powerpc64/__longjmp-common.S +++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S @@ -40,6 +40,7 @@ .section ".text" #endif + .machine "altivec" ENTRY (BP_SYM (__longjmp)) CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) #ifndef __NO_VMX__ diff --git a/sysdeps/powerpc/powerpc64/setjmp-common.S b/sysdeps/powerpc/powerpc64/setjmp-common.S index 85c840348d..99b181dfe4 100644 --- a/sysdeps/powerpc/powerpc64/setjmp-common.S +++ b/sysdeps/powerpc/powerpc64/setjmp-common.S @@ -39,6 +39,7 @@ .section ".text" #endif + .machine "altivec" ENTRY (BP_SYM (__sigsetjmp)) CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) std r1,(JB_GPR1*8)(3) -- cgit 1.4.1