aboutsummaryrefslogtreecommitdiffstats
path: root/config/user-arch.m4
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2009-07-16 09:59:44 -0700
committerBrian Behlendorf <[email protected]>2009-07-16 09:59:44 -0700
commit3ae0e369f33a6a914df4f43d717857be2b2c8bef (patch)
tree1211cbc9407090a6ebdab9e719011d8ecb680f8b /config/user-arch.m4
parent1c396c46004ed23f45ddc496b3dbb4bb3f3023af (diff)
Add generic user space atomic support.
Futher testing on my powerpc system revealed that the powerpc specific atomic implemetation was flawed. Rather than spending a lot of time correctly reimplementing it in assembly I have reworked it in to a 100% generic version. The generic version will not perform well but it does provide correct sematics. It will be used only when there is no architecture specific version available. These changes do not impact x86_64 and x86 which have have correct native implementations.
Diffstat (limited to 'config/user-arch.m4')
-rw-r--r--config/user-arch.m416
1 files changed, 7 insertions, 9 deletions
diff --git a/config/user-arch.m4 b/config/user-arch.m4
index 1ffa28b0e..fcc566fc5 100644
--- a/config/user-arch.m4
+++ b/config/user-arch.m4
@@ -2,20 +2,18 @@ dnl #
dnl # Set the target arch for libspl atomic implementation
dnl #
AC_DEFUN([ZFS_AC_CONFIG_USER_ARCH], [
- AC_MSG_CHECKING(for target arch)
+ AC_MSG_CHECKING(for target asm dir)
TARGET_ARCH=`echo ${target_cpu} | sed -e s/i.86/i386/`
- TARGET_ARCH_DIR=asm-$TARGET_ARCH
- AC_MSG_RESULT([$TARGET_ARCH])
case $TARGET_ARCH in
- i386|x86_64|powerpc64)
- AC_SUBST([TARGET_ARCH])
- AC_SUBST([TARGET_ARCH_DIR])
+ i386|x86_64)
+ TARGET_ASM_DIR=asm-${TARGET_ARCH}
;;
*)
- AC_MSG_ERROR([
- *** Unsupported architecture $TARGET_ARCH
- *** Available architectures: x86, x86_64, powerpc64])
+ TARGET_ASM_DIR=asm-generic
;;
esac
+
+ AC_SUBST([TARGET_ASM_DIR])
+ AC_MSG_RESULT([$TARGET_ASM_DIR])
])