Commit fe53e3dd authored by sof's avatar sof
Browse files

[project @ 2002-06-04 16:13:53 by sof]

Given how CPP works, the prev. commit does not cut the mustard.

Reduce the risk of name clashes by giving the #defines some more
obscure names instead.
parent 7670e239
/* -----------------------------------------------------------------------------
* $Id: PrimOps.h,v 1.94 2002/06/03 11:31:55 simonmar Exp $
* $Id: PrimOps.h,v 1.95 2002/06/04 16:13:53 sof Exp $
*
* (c) The GHC Team, 1998-2000
*
......@@ -48,11 +48,11 @@
#if SIZEOF_VOID_P == 4
#ifdef WORDS_BIGENDIAN
#define C 0
#define R 1
#define RTS_CARRY_IDX__ 0
#define RTS_REM_IDX__ 1
#else
#define C 1
#define R 0
#define RTS_CARRY_IDX__ 1
#define RTS_REM_IDX__ 0
#endif
typedef union {
......@@ -65,8 +65,8 @@ typedef union {
StgInt32 r, c; \
long_long_u z; \
z.l = (StgInt64)a * (StgInt64)b; \
r = z.i[R]; \
c = z.i[C]; \
r = z.i[RTS_REM_IDX__]; \
c = z.i[RTS_CARRY_IDX__]; \
if (c == 0 || c == -1) { \
c = ((StgWord)((a^b) ^ r)) \
>> (BITS_IN (I_) - 1); \
......@@ -78,9 +78,6 @@ typedef union {
* you test it thoroughly after changing it.
*/
#undef C
#undef R
#else
#define HALF_INT (((I_)1) << (BITS_IN (I_) / 2))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment