Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] [hwloc-svn] svn:hwloc r1853
From: Bert Wesarg (bert.wesarg_at_[hidden])
Date: 2010-03-26 14:34:35


On Fri, Mar 26, 2010 at 17:51, Jeff Squyres <jsquyres_at_[hidden]> wrote:
> Does this work with compilers that (pseudo) impersonate gcc (e.g., icc)?

Wouldn't that be a bug of the impersonater?

Bert

>
> On Mar 26, 2010, at 12:01 PM, <sthibaul_at_[hidden]> wrote:
>
>> Author: sthibaul
>> Date: 2010-03-26 12:01:17 EDT (Fri, 26 Mar 2010)
>> New Revision: 1853
>> URL: https://svn.open-mpi.org/trac/hwloc/changeset/1853
>>
>> Log:
>> Automatically enable some attributes when the compiler is known to be gcc. Thanks Bert Wesarg for the suggestion
>> Text files modified:
>>    trunk/include/hwloc/config.h.in |    28 ++++++++++++++++++----------
>>    1 files changed, 18 insertions(+), 10 deletions(-)
>>
>> Modified: trunk/include/hwloc/config.h.in
>> ==============================================================================
>> --- trunk/include/hwloc/config.h.in     (original)
>> +++ trunk/include/hwloc/config.h.in     2010-03-26 12:01:17 EDT (Fri, 26 Mar 2010)
>> @@ -19,8 +19,16 @@
>>  # endif
>>  #endif
>>
>> -#ifdef HWLOC_HAVE_ATTRIBUTE_UNUSED
>> -# if HWLOC_HAVE_ATTRIBUTE_UNUSED
>> +/*
>> + * Note: this is public.  We can not assume anything from the compiler used
>> + * by the application and thus the HWLOC_HAVE_* macros below are not
>> + * fetched from the autoconf result here. We only automatically use a few
>> + * well-known easy cases.
>> + */
>> +
>> +/* Maybe before gcc 2.95 too */
>> +#if defined(HWLOC_HAVE_ATTRIBUTE_UNUSED) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
>> +# if HWLOC_HAVE_ATTRIBUTE_UNUSED || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
>>  #  define __hwloc_attribute_unused __attribute__((__unused__))
>>  # else
>>  #  define __hwloc_attribute_unused
>> @@ -29,8 +37,8 @@
>>  # define __hwloc_attribute_unused
>>  #endif
>>
>> -#ifdef HWLOC_HAVE_ATTRIBUTE_MALLOC
>> -# if HWLOC_HAVE_ATTRIBUTE_MALLOC
>> +#if defined(HWLOC_HAVE_ATTRIBUTE_MALLOC) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
>> +# if HWLOC_HAVE_ATTRIBUTE_MALLOC || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
>>  #  define __hwloc_attribute_malloc __attribute__((__malloc__))
>>  # else
>>  #  define __hwloc_attribute_malloc
>> @@ -39,8 +47,8 @@
>>  # define __hwloc_attribute_malloc
>>  #endif
>>
>> -#ifdef HWLOC_HAVE_ATTRIBUTE_CONST
>> -# if HWLOC_HAVE_ATTRIBUTE_CONST
>> +#if defined(HWLOC_HAVE_ATTRIBUTE_CONST) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
>> +# if HWLOC_HAVE_ATTRIBUTE_CONST || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
>>  #  define __hwloc_attribute_const __attribute__((__const__))
>>  # else
>>  #  define __hwloc_attribute_const
>> @@ -49,8 +57,8 @@
>>  # define __hwloc_attribute_const
>>  #endif
>>
>> -#ifdef HWLOC_HAVE_ATTRIBUTE_PURE
>> -# if HWLOC_HAVE_ATTRIBUTE_PURE
>> +#if defined(HWLOC_HAVE_ATTRIBUTE_PURE) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
>> +# if HWLOC_HAVE_ATTRIBUTE_PURE || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
>>  #  define __hwloc_attribute_pure __attribute__((__pure__))
>>  # else
>>  #  define __hwloc_attribute_pure
>> @@ -59,8 +67,8 @@
>>  # define __hwloc_attribute_pure
>>  #endif
>>
>> -#ifdef HWLOC_HAVE_ATTRIBUTE_DEPRECATED
>> -# if HWLOC_HAVE_ATTRIBUTE_DEPRECATED
>> +#if defined(HWLOC_HAVE_ATTRIBUTE_DEPRECATED) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
>> +# if HWLOC_HAVE_ATTRIBUTE_DEPRECATED || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
>>  #  define __hwloc_attribute_deprecated __attribute__((__deprecated__))
>>  # else
>>  #  define __hwloc_attribute_deprecated
>> _______________________________________________
>> hwloc-svn mailing list
>> hwloc-svn_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-svn
>>
>
>
> --
> Jeff Squyres
> jsquyres_at_[hidden]
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
>
>
> _______________________________________________
> hwloc-devel mailing list
> hwloc-devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-devel
>