This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] Fix build of gold/mips.cc with GCC 4.3
- From: Richard Biener <rguenther at suse dot de>
- To: binutils at sourceware dot org
- Date: Wed, 26 Jul 2017 12:55:35 +0200 (CEST)
- Subject: [PATCH] Fix build of gold/mips.cc with GCC 4.3
- Authentication-results: sourceware.org; auth=none
I need the following to fix build with GCC 4.3 which with -m32 complains
about 0x800080008000 being too large for 'long' type. GCC 4.8
doesn't complain so not sure whether it just silently discards extra
precision or if the standard mandates a long-long literal here.
Richard.
--- gold/mips.cc.orig 2017-07-26 12:42:53.595075930 +0200
+++ gold/mips.cc 2017-07-26 12:43:15.859443263 +0200
@@ -5664,7 +5664,7 @@
: addend_a);
Valtype x = psymval->value(object, addend);
- x = ((x + (uint64_t) 0x800080008000) >> 48) & 0xffff;
+ x = ((x + (uint64_t) 0x800080008000ULL) >> 48) & 0xffff;
val = Bits<32>::bit_select32(val, x, 0xffff);
if (calculate_only)