Re: [OMPI devel] oshmem fixed sized type support

2014-05-06 Thread Jeff Squyres (jsquyres)
Ok -- if  is C99, then we're cool.

Thanks Larry.


On May 5, 2014, at 6:14 PM, Larry Baker  wrote:

> Jeff,
> 
> The stdint.h header is Section 7.18 Integer types  in the C99 
> standard (I can mail you a PDF copy if you like).  It says
> 
>> 7.18.1.1 Exact-width integer types
>> 
>> 1The typedef name intN_t designates a signed integer type with width N , 
>> no padding bits, and a two’s complement representation. Thus, int8_t denotes 
>> a signed integer type with a width of exactly 8 bits.
>> 
>> 2The typedef name uintN_t designates an unsigned integer type with width 
>> N . Thus, uint24_t denotes an unsigned integer type with a width of exactly 
>> 24 bits.
>> 
>> 3These types are optional. However, if an implementation provides 
>> integer types with widths of 8, 16, 32, or 64 bits, no padding bits, and 
>> (for the signed types) that have a two’s complement representation, it shall 
>> define the corresponding typedef names.
> 
> If OpenMPI requires C99 conformance, stdint.h will be there, but you will 
> have to check for any width (u)int_t's you care about by name.  Since these 
> are typedefs, I am not sure how that might be done in CPP; a configure step 
> might be required.
> 
> Larry Baker
> US Geological Survey
> 650-329-5608
> ba...@usgs.gov
> 
> 
> 
> On 5 May 2014, at 2:46 PM, Jeff Squyres (jsquyres) wrote:
> 
>> Josh --
>> 
>> Is this the Right fix?
>> 
>> I ask because we check for  in configure.  I'm sure it's always 
>> there for Linux, but is it *always* there?  Indeed, are all the fixed size 
>> types always guaranteed to be available?
>> 
>> 
>> 
>> On May 2, 2014, at 12:14 PM, svn-commit-mai...@open-mpi.org wrote:
>> 
>>> Author: jladd (Joshua Ladd)
>>> Date: 2014-05-02 12:14:05 EDT (Fri, 02 May 2014)
>>> New Revision: 31605
>>> URL: https://svn.open-mpi.org/trac/ompi/changeset/31605
>>> 
>>> Log:
>>> Adding missing include for OSHMEM changes necessary to support Java 
>>> bindings.
>>> 
>>> Text files modified: 
>>> trunk/oshmem/include/shmem.h.in | 2 +-  
>>> 
>>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>> 
>>> Modified: trunk/oshmem/include/shmem.h.in
>>> ==
>>> --- trunk/oshmem/include/shmem.h.in Fri May  2 10:28:45 2014(r31604)
>>> +++ trunk/oshmem/include/shmem.h.in 2014-05-02 12:14:05 EDT (Fri, 02 May 
>>> 2014)  (r31605)
>>> @@ -14,7 +14,7 @@
>>> 
>>> 
>>> #include  /* include for ptrdiff_t */
>>> -
>>> +#include  /* include for fixed width types */
>>> #if defined(c_plusplus) || defined(__cplusplus)
>>> #include 
>>> #define OSHMEM_COMPLEX_TYPE(type)std::complex
>>> ___
>>> 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/05/14685.php
> 


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



Re: [OMPI devel] oshmem fixed sized type support

2014-05-05 Thread Larry Baker
Jeff,

The stdint.h header is Section 7.18 Integer types  in the C99 
standard (I can mail you a PDF copy if you like).  It says

> 7.18.1.1 Exact-width integer types
> 
> 1 The typedef name intN_t designates a signed integer type with width N , 
> no padding bits, and a two’s complement representation. Thus, int8_t denotes 
> a signed integer type with a width of exactly 8 bits.
> 
> 2 The typedef name uintN_t designates an unsigned integer type with width 
> N . Thus, uint24_t denotes an unsigned integer type with a width of exactly 
> 24 bits.
> 
> 3 These types are optional. However, if an implementation provides 
> integer types with widths of 8, 16, 32, or 64 bits, no padding bits, and (for 
> the signed types) that have a two’s complement representation, it shall 
> define the corresponding typedef names.

If OpenMPI requires C99 conformance, stdint.h will be there, but you will have 
to check for any width (u)int_t's you care about by name.  Since these are 
typedefs, I am not sure how that might be done in CPP; a configure step might 
be required.

Larry Baker
US Geological Survey
650-329-5608
ba...@usgs.gov



On 5 May 2014, at 2:46 PM, Jeff Squyres (jsquyres) wrote:

> Josh --
> 
> Is this the Right fix?
> 
> I ask because we check for  in configure.  I'm sure it's always 
> there for Linux, but is it *always* there?  Indeed, are all the fixed size 
> types always guaranteed to be available?
> 
> 
> 
> On May 2, 2014, at 12:14 PM, svn-commit-mai...@open-mpi.org wrote:
> 
>> Author: jladd (Joshua Ladd)
>> Date: 2014-05-02 12:14:05 EDT (Fri, 02 May 2014)
>> New Revision: 31605
>> URL: https://svn.open-mpi.org/trac/ompi/changeset/31605
>> 
>> Log:
>> Adding missing include for OSHMEM changes necessary to support Java bindings.
>> 
>> Text files modified: 
>>  trunk/oshmem/include/shmem.h.in | 2 +-  
>> 
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>> 
>> Modified: trunk/oshmem/include/shmem.h.in
>> ==
>> --- trunk/oshmem/include/shmem.h.in  Fri May  2 10:28:45 2014(r31604)
>> +++ trunk/oshmem/include/shmem.h.in  2014-05-02 12:14:05 EDT (Fri, 02 May 
>> 2014)  (r31605)
>> @@ -14,7 +14,7 @@
>> 
>> 
>> #include  /* include for ptrdiff_t */
>> -
>> +#include  /* include for fixed width types */
>> #if defined(c_plusplus) || defined(__cplusplus)
>> #include 
>> #define OSHMEM_COMPLEX_TYPE(type)std::complex
>> ___
>> 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/05/14685.php



[OMPI devel] oshmem fixed sized type support

2014-05-05 Thread Jeff Squyres (jsquyres)
Josh --

Is this the Right fix?

I ask because we check for  in configure.  I'm sure it's always there 
for Linux, but is it *always* there?  Indeed, are all the fixed size types 
always guaranteed to be available?



On May 2, 2014, at 12:14 PM, svn-commit-mai...@open-mpi.org wrote:

> Author: jladd (Joshua Ladd)
> Date: 2014-05-02 12:14:05 EDT (Fri, 02 May 2014)
> New Revision: 31605
> URL: https://svn.open-mpi.org/trac/ompi/changeset/31605
> 
> Log:
> Adding missing include for OSHMEM changes necessary to support Java bindings.
> 
> Text files modified: 
>   trunk/oshmem/include/shmem.h.in | 2 +-  
> 
>   1 files changed, 1 insertions(+), 1 deletions(-)
> 
> Modified: trunk/oshmem/include/shmem.h.in
> ==
> --- trunk/oshmem/include/shmem.h.in   Fri May  2 10:28:45 2014(r31604)
> +++ trunk/oshmem/include/shmem.h.in   2014-05-02 12:14:05 EDT (Fri, 02 May 
> 2014)  (r31605)
> @@ -14,7 +14,7 @@
> 
> 
> #include  /* include for ptrdiff_t */
> -
> +#include  /* include for fixed width types */
> #if defined(c_plusplus) || defined(__cplusplus)
> #include 
> #define OSHMEM_COMPLEX_TYPE(type)std::complex
> ___
> 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/