Ryan --

I'm getting build failures with this:

-----
make[1]: Entering directory 
`/home/jsquyres/svn/ompi5/openmpi-1.9a1r31394M/_build/opal/asm'
  CC       asm.lo
In file included from ../../../opal/asm/asm.c:21:
../../../opal/include/opal/sys/atomic.h:144:7: error: invalid digit "8" in 
octal constant
../../../opal/include/opal/sys/atomic.h:146:7: error: invalid digit "8" in 
octal constant
-----

The problem seems to be coming from a new #define you added:

#define OMPI_NO_BUILTIN     0800

With the leading 0, it's being interpreted as octal, and therefore 8 is an 
invalid digit.

>From looking at the other values in that #define group, it's not clear to me 
>if these are supposed to be bit flags or just unique values...?



On Apr 15, 2014, at 9:17 AM, svn-commit-mai...@open-mpi.org wrote:

> Author: regrant (Ryan Grant)
> Date: 2014-04-15 09:17:04 EDT (Tue, 15 Apr 2014)
> New Revision: 31393
> URL: https://svn.open-mpi.org/trac/ompi/changeset/31393
> 
> Log:
> Fixing atomics selection issue, to be CMR'd after it passes the nightly tests
> 
> Text files modified: 
>   trunk/config/opal_config_asm.m4            |    26 
> ++++++++++++++++++--------              
>   trunk/opal/include/opal/sys/architecture.h |     1 +                        
>                
>   trunk/opal/include/opal/sys/atomic.h       |    10 +++++-----               
>                
>   3 files changed, 24 insertions(+), 13 deletions(-)
> 
> Modified: trunk/config/opal_config_asm.m4
> ==============================================================================
> --- trunk/config/opal_config_asm.m4   Tue Apr 15 03:23:39 2014        (r31392)
> +++ trunk/config/opal_config_asm.m4   2014-04-15 09:17:04 EDT (Tue, 15 Apr 
> 2014)      (r31393)
> @@ -766,14 +766,17 @@
>          [Enable use of OSX builtin atomics (default: disabled)])])
> 
>     if test "$enable_builtin_atomics" = "yes" ; then
> -       OPAL_CHECK_SYNC_BUILTINS([ompi_cv_asm_arch="SYNC_BUILTIN"],
> +       OPAL_CHECK_SYNC_BUILTINS([ompi_cv_asm_builtin="SYNC_BUILTIN"],
>          [AC_MSG_ERROR([__sync builtin atomics requested but not found.])])
>        AC_DEFINE([OPAL_C_GCC_INLINE_ASSEMBLY], [1],
>          [Whether C compiler supports GCC style inline assembly])
>     elif test "$enable_osx_builtin_atomics" = "yes" ; then
> -     AC_CHECK_HEADER([libkern/OSAtomic.h],[ompi_cv_asm_arch="OSX_BUILTIN"],
> +        
> AC_CHECK_HEADER([libkern/OSAtomic.h],[ompi_cv_asm_builtin="OSX_BUILTIN"],
>           [AC_MSG_ERROR([OSX builtin atomics requested but not found.])])
>     else
> +       ompi_cv_asm_builtin="NO_BUILTIN" 
> +    fi
> +
>         OMPI_CHECK_ASM_PROC
>         OMPI_CHECK_ASM_TEXT
>         OMPI_CHECK_ASM_GLOBAL
> @@ -898,12 +901,12 @@
>             ;;
> 
>         *)
> -            OPAL_CHECK_SYNC_BUILTINS([ompi_cv_asm_arch="SYNC_BUILTIN"],
> +            OPAL_CHECK_SYNC_BUILTINS([ompi_cv_asm_builtin="SYNC_BUILTIN"],
>               [AC_MSG_ERROR([No atomic primitives available for $host])])
>             ;;
>         esac
> 
> -      if test "$ompi_cv_asm_arch" = "SYNC_BUILTIN" ; then
> +      if test "$ompi_cv_asm_builtin" = "SYNC_BUILTIN" ; then
>         AC_DEFINE([OPAL_C_GCC_INLINE_ASSEMBLY], [1],
>           [Whether C compiler supports GCC style inline assembly])
>       else
> @@ -954,17 +957,24 @@
>         AC_DEFINE_UNQUOTED([OPAL_ASSEMBLY_FORMAT], ["$OPAL_ASSEMBLY_FORMAT"],
>                            [Format of assembly file])
>         AC_SUBST([OPAL_ASSEMBLY_FORMAT])
> -      fi # if ompi_cv_asm_arch = SYNC_BUILTIN
> -    fi # if cv_c_compiler_vendor = microsoft
> +      fi # if ompi_cv_asm_builtin = SYNC_BUILTIN
> 
>     result="OMPI_$ompi_cv_asm_arch"
>     OPAL_ASSEMBLY_ARCH="$ompi_cv_asm_arch"
>     AC_MSG_CHECKING([for asssembly architecture])
>     AC_MSG_RESULT([$ompi_cv_asm_arch])
>     AC_DEFINE_UNQUOTED([OPAL_ASSEMBLY_ARCH], [$result],
> -        [Architecture type of assembly to use for atomic operations])
> +        [Architecture type of assembly to use for atomic operations and CMA])
>     AC_SUBST([OPAL_ASSEMBLY_ARCH])
> 
> +    result="OMPI_$ompi_cv_asm_builtin"
> +    OPAL_ASSEMBLY_BUILTIN="$ompi_cv_asm_builtin"
> +    AC_MSG_CHECKING([for builtin atomics])
> +    AC_MSG_RESULT([$ompi_cv_asm_builtin])
> +    AC_DEFINE_UNQUOTED([OPAL_ASSEMBLY_BUILTIN], [$result],
> +        [Whether to use builtin atomics])
> +    AC_SUBST([OPAL_ASSEMBLY_BUILTIN])
> +
>     OMPI_ASM_FIND_FILE
> 
>     unset result asm_format
> @@ -983,7 +993,7 @@
>     AC_REQUIRE([AC_PROG_GREP])
>     AC_REQUIRE([AC_PROG_FGREP])
> 
> -if test "$ompi_cv_asm_arch" != "WINDOWS" -a "$ompi_cv_asm_arch" != 
> "SYNC_BUILTIN" -a "$ompi_cv_asm_arch" != "OSX_BUILTIN" ; then
> +if test "$ompi_cv_asm_arch" != "WINDOWS" -a "$ompi_cv_asm_builtin" != 
> "SYNC_BUILTIN" -a "$ompi_cv_asm_builtin" != "OSX_BUILTIN" ; then
>     AC_CHECK_PROG([PERL], [perl], [perl])
> 
>     # see if we have a pre-built one already
> 
> Modified: trunk/opal/include/opal/sys/architecture.h
> ==============================================================================
> --- trunk/opal/include/opal/sys/architecture.h        Tue Apr 15 03:23:39 
> 2014        (r31392)
> +++ trunk/opal/include/opal/sys/architecture.h        2014-04-15 09:17:04 EDT 
> (Tue, 15 Apr 2014)      (r31393)
> @@ -39,6 +39,7 @@
> #define OMPI_ARM            0100
> #define OMPI_SYNC_BUILTIN   0200
> #define OMPI_OSX_BUILTIN    0400
> +#define OMPI_NO_BUILTIN     0800
> 
> /* Formats */
> #define OMPI_DEFAULT        1000  /* standard for given architecture */
> 
> Modified: trunk/opal/include/opal/sys/atomic.h
> ==============================================================================
> --- trunk/opal/include/opal/sys/atomic.h      Tue Apr 15 03:23:39 2014        
> (r31392)
> +++ trunk/opal/include/opal/sys/atomic.h      2014-04-15 09:17:04 EDT (Tue, 
> 15 Apr 2014)      (r31393)
> @@ -136,9 +136,13 @@
>  * Load the appropriate architecture files and set some reasonable
>  * default values for our support
>  *
> - *********************************************************************/
> + *********************************************************************/ 
> #if defined(DOXYGEN)
> /* don't include system-level gorp when generating doxygen files */ 
> +#elif OPAL_ASSEMBLY_BUILTIN == OMPI_SYNC_BUILTIN
> +#include "opal/sys/sync_builtin/atomic.h"
> +#elif OPAL_ASSEMBLY_BUILTIN == OMPI_OSX_BUILTIN
> +#include "opal/sys/osx/atomic.h"
> #elif OPAL_ASSEMBLY_ARCH == OMPI_ALPHA
> #include "opal/sys/alpha/atomic.h"
> #elif OPAL_ASSEMBLY_ARCH == OMPI_AMD64
> @@ -161,10 +165,6 @@
> #include "opal/sys/sparcv9/atomic.h"
> #elif OPAL_ASSEMBLY_ARCH == OMPI_SPARCV9_64
> #include "opal/sys/sparcv9/atomic.h"
> -#elif OPAL_ASSEMBLY_ARCH == OMPI_SYNC_BUILTIN
> -#include "opal/sys/sync_builtin/atomic.h"
> -#elif OPAL_ASSEMBLY_ARCH == OMPI_OSX_BUILTIN
> -#include "opal/sys/osx/atomic.h"
> #endif
> 
> #ifndef DOXYGEN
> _______________________________________________
> svn-full mailing list
> svn-f...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/svn-full


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

Reply via email to