From af246415aa48006c215cb6c3d84943d5124260eb Mon Sep 17 00:00:00 2001 From: David Daney Date: Sun, 18 Nov 2007 05:23:59 +0000 Subject: constants.c (build_constants_constructor): Use POINTER_SIZE insead of BITS_PER_WORD in big-endian work around. 2007-11-16 David Daney Andrew Haley * constants.c (build_constants_constructor): Use POINTER_SIZE insead of BITS_PER_WORD in big-endian work around. From-SVN: r130267 --- gcc/java/constants.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gcc/java/constants.c') diff --git a/gcc/java/constants.c b/gcc/java/constants.c index 68154c0..8a3c532c 100644 --- a/gcc/java/constants.c +++ b/gcc/java/constants.c @@ -518,13 +518,13 @@ build_constants_constructor (void) { unsigned HOST_WIDE_INT temp = outgoing_cpool->data[i].w; - /* Make sure that on a 64-bit big-endian machine this - 32-bit jint appears in the first word. + /* Make sure that on a big-endian machine with 64-bit + pointers this 32-bit jint appears in the first word. FIXME: This is a kludge. The field we're initializing is not a scalar but a union, and that's how we should represent it in the compiler. We should fix this. */ - if (BYTES_BIG_ENDIAN && BITS_PER_WORD > 32) - temp <<= BITS_PER_WORD - 32; + if (BYTES_BIG_ENDIAN && POINTER_SIZE > 32) + temp <<= POINTER_SIZE - 32; tags_list = tree_cons (NULL_TREE, get_tag_node (outgoing_cpool->tags[i]), -- cgit v1.1