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
> 

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to