
* The opal_sys_timer_get_cycles() call was implemented for Sparc v9 using inline assembly, but not in the assembly files. This would only currently matter on Linux Sparc systems using a compiler that didn't support inline assembly (not many of those), but it should be there for completion. * The linux timer component would always build on non-Alpha platforms, rather than only building on platforms where opal_sys_timer_get_cycles() was implemented. This would only matter on a very narrow set of platforms that we don't really support, but still, it could be more right. We now only build the component on platforms where we have the assembly call to get the cycle counter. * Added a comment to opal/sys/timer.h to note that the linux timer component needed to be updated if another platform was added. This should be harmless to commit. It will only really change behaviors on platforms we don't have assembly support for, which currently won't make it through configure. It really only matters when (if?) we support atomic operations through libatomic_ops. This commit was SVN r17887.
66 строки
2.1 KiB
Bash
66 строки
2.1 KiB
Bash
# -*- shell-script -*-
|
|
#
|
|
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
# University Research and Technology
|
|
# Corporation. All rights reserved.
|
|
# Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
# of Tennessee Research Foundation. All rights
|
|
# reserved.
|
|
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
# University of Stuttgart. All rights reserved.
|
|
# Copyright (c) 2004-2005 The Regents of the University of California.
|
|
# All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
AC_DEFUN([MCA_timer_linux_COMPILE_MODE], [
|
|
AC_MSG_CHECKING([for MCA component $2:$3 compile mode])
|
|
$4="static"
|
|
AC_MSG_RESULT([$$4])
|
|
])
|
|
|
|
|
|
# MCA_timer_linux_CONFIG(action-if-can-compile,
|
|
# [action-if-cant-compile])
|
|
# ------------------------------------------------
|
|
AC_DEFUN([MCA_timer_linux_CONFIG],[
|
|
AC_ARG_WITH([timer],
|
|
[AC_HELP_STRING([--with-timer=TYPE],
|
|
[Build high resolution timer component TYPE])])
|
|
|
|
AS_IF([test "$with_timer" = "linux"],
|
|
[timer_linux_happy="yes"
|
|
timer_linux_should_use=1],
|
|
[timer_linux_should_use=0
|
|
AS_IF([test "$with_timer" = ""],
|
|
[timer_linux_happy="yes"],
|
|
[timer_linux_happy="no"])])
|
|
|
|
AS_IF([test "$timer_linux_happy" = "yes"],
|
|
[AS_IF([test -r "/proc/cpuinfo"],
|
|
[timer_linux_happy="yes"],
|
|
[timer_linux_happy="no"])])
|
|
|
|
case "${host}" in
|
|
i?86-*|x86_64*|ia64-*|powerpc-*|powerpc64-*|sparc*-*)
|
|
timer_linux_happy="yes"
|
|
;;
|
|
*)
|
|
timer_linux_happy="no"
|
|
;;
|
|
esac
|
|
|
|
AS_IF([test "$timer_linux_happy" = "no" -a \
|
|
"$timer_linux_should_use" = "1"],
|
|
[AC_MSG_ERROR([Linux timer requested but not available. Aborting.])])
|
|
|
|
AS_IF([test "$timer_linux_happy" = "yes"],
|
|
[timer_base_include="linux/timer_linux.h"
|
|
$1],
|
|
[$2])
|
|
])
|