This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Bug on Solaris
- From: Jeff Sturm <jsturm at one-point dot com>
- To: Martin Kahlert <martin dot kahlert at infineon dot com>
- Cc: java at gcc dot gnu dot org
- Date: Wed, 9 Jan 2002 10:44:47 -0500 (EST)
- Subject: Re: Bug on Solaris
On Wed, 9 Jan 2002, Martin Kahlert wrote:
> cool idea, and i immediately changed the line
> if (FLOAT_WORDS_BIG_ENDIAN)
> into
> if (FLOAT_WORDS_BIG_ENDIAN && sizeof(num[0]) < 8)
> and after that the prog worked o.k. for the testcase on Linux and Solaris.
Good. Thanks for trying that. It failed on my sparcv9 and alpha builds,
apparently for unrelated reasons :(
(Question for maintainers: Should we commit Martin's program to the libgcj
testsuite? Is the output reliable cross-platform?)
> What's the idea behind HOST_WIDE_INT? For the java frontend, all the
> types are defined exactly by Sun. E.g. an int has 32 bits and so on.
> So wouldn't types like int32_t be better for such tasks?
We're pretty much constrained to using GCC's type system. HOST_WIDE_INT
is normally the largest integer type the host compiler can accomodate,
i.e. `long long' if the compiler supports it, else `long'.
However for building gcj we don't support non-GCC host compilers, so
"sizeof(HOST_WIDE_INT) >= 8" is probably a safe bet.
Jeff