[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: coreutils-5.0.90 problems on Crays
From: |
Paul Eggert |
Subject: |
Re: coreutils-5.0.90 problems on Crays |
Date: |
18 Aug 2003 16:14:42 -0700 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 |
Wendy Palm <address@hidden> writes:
> with the change i proposed, the only error i have with the tests is
> date-tests and i haven't had time to check what that problem is yet.
I doubt whether the tests exercise the md5 and sha code a lot, and I
suspect that there will be latent bugs, unless someone carefully inspects
the code and makes sure that there are no problems.
> i'd be interested to know what programs are potentially problems with >32bits.
> possibly some shifting assumptions may be messed up.
For example, here's the first use of md5_uint32 in md5.c:
((md5_uint32 *) resbuf)[0] = SWAP (ctx->A);
SWAP is defined as follows:
#ifdef WORDS_BIGENDIAN
# define SWAP(n) \
(((n) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) | ((n) >> 24))
#else
# define SWAP(n) (n)
#endif
If Cray is a WORDS_BIGENDIAN host, this will put garbage bits into the
high-order part of ((md5_uint32 *) resbuf)[0].
This is just the first occurrence that I found. Basically, someone
needs to check every instance of md5_uint32 and make sure that it
works OK.
> cc -hnointrinsics -Wl,-Dmsglevel=334:fatal -o [ lbracket.o
> ../lib/libfetish.a ../lib/libfetish.a -lgen
> GETTMC: invalid primary machine name on TARGET statement
Does it work to change the "-o [" to "-o lbracket", and then to
issue "mv [ lbracket" afterwards?