Perfect -- thanks!

On Apr 15, 2014, at 11:36 AM, "Grant, Ryan Eric (-EXP)" <regr...@sandia.gov> 
wrote:

> Jeff,
> 
> Ack, sorry. I've grouped the built-in atomics into a family 020x as
> discussed. I've also got the built-ins renamed as OMPI_BULTIN_name. Commit
> is coming up soon.
> 
> --Ryan
> 
> On 4/15/14 8:57 AM, "Jeff Squyres (jsquyres)" <jsquy...@cisco.com> wrote:
> 
>> 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/
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> Link to this post:
>> http://www.open-mpi.org/community/lists/devel/2014/04/14529.php
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2014/04/14530.php


-- 
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