-taso on alpha/linux with gcc/gnu ld
Thu Feb 24 10:58:00 GMT 2000
On alpha TRU64 Unix, the Scheme->C compiler that I use (Gambit-C) has an
option to use either 64bit integers (longs) in which to store pointers,
or 32bit integers (ints) with the -taso compile/link flag. Recently,
support for this flag in ld has been sent to the binutils list, and
has been incorporated by H. J. Lu into his linux binutils distribution
(at least in 188.8.131.52.27).
Now, 64bit ints and pointers are nice for some applications (bignum
arithmetic, for example, or Scientific Computing applications requiring >
2 Gbytes of memory), but are unnecesary for some, if not most, Scientific
Computing codes, and then using 32bit words is a BIG WIN in lower memory
requirements and speed improvements.
So I've been trying to use this -taso flag without much luck. I don't
know yet where the problem is (I get an almost immediate segmentation
fault at runtime), but I do know I get lots of warning messages from gcc
at compile time trying to stuff a 64bit pointer into a 32-bit int. So
does anyone on either of these lists have any suggestions about how to get
gcc to know that we're working with 32-bit pointers (or if this is even
necessary); or whether -taso works at all on alphaev6-unknown-linux-gnu?
More information about the Binutils