Boost logo

Boost :

From: Dan Gohman (djg_at_[hidden])
Date: 2003-01-23 13:14:12


Hi Matthias,

The reason for special-casing the Cray X1 here is so that int_fast16_t
isn't defined to be short, as short has performance penalties associated
with it on this platform.

I can't guarantee I'll be able to test jam, but I'll let you know if I
get to it.

Dan

On Thu, 2003-01-23 at 11:43, Matthias Troyer wrote:
> Hi Dan,
>
> I don't think this will be needed since on the X1 USHRT_MAX should be
> 0xffff, and thus the default version will work. Note that the patch for
> the SV1 and other Crays that I submitted checks for USHRT_MAX being
> 0xffffffff and thus does not apply on the X1 anyways.
>
> On another note, I got jam to compile on the SV1, and have submitted a
> patch. Now I am running the regression tests on it. Not having access
> to an X1 yet (and the 4.2 compilers don't exist for other Crays), I
> can't run the tests there at the moment. Could you try to run it, once
> I have patched boost for the SV1?
>
> Best regards,
>
> Matthias
>
> On Thursday, January 23, 2003, at 05:49 PM, Dan Gohman wrote:
>
> > The recent change to boost/cstdint.hpp for Cray systems is not
> > appropriate for the Cray X1. It has a 16-bit short type, however there
> > are performance penalties associated with it.
> >
> > The following patch for cstdint.hpp sets up the appropriate typedefs
> > for
> > this platform.
> >
> > diff -u -r1.29 cstdint.hpp
> > --- boost/cstdint.hpp 22 Jan 2003 12:12:14 -0000 1.29
> > +++ boost/cstdint.hpp 23 Jan 2003 16:32:04 -0000
> > @@ -160,7 +160,16 @@
> >
> > // 16-bit types
> > -----------------------------------------------------------//
> >
> > -# if USHRT_MAX == 0xffff
> > +# if defined(__crayx1)
> > + // The Cray X1 has a 16-bit short, however it is not recommend
> > + // for use in performance critical code.
> > + typedef short int16_t;
> > + typedef short int_least16_t;
> > + typedef int int_fast16_t;
> > + typedef unsigned short uint16_t;
> > + typedef unsigned short uint_least16_t;
> > + typedef unsigned int uint_fast16_t;
> > +# elif USHRT_MAX == 0xffff
> > typedef short int16_t;
> > typedef short int_least16_t;
> > typedef short int_fast16_t;
> >
> > _______________________________________________
> > Unsubscribe & other changes:
> > http://lists.boost.org/mailman/listinfo.cgi/boost
>


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk