From ac0d427f4b3a2b82dcf395da74fdbc71ee598095 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Mon, 1 Feb 2016 11:36:59 +0000 Subject: [PATCH] Fix error building Microblaze assembler on a 32-bit host. * config/tc-microblaze.c (parse_imm): Fix compile time warning message extending a negative 32-bit value into a larger signed value on a 32-bit host. --- gas/ChangeLog | 6 ++++++ gas/config/tc-microblaze.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 3ed4665..027b556 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2016-02-01 Nick Clifton + + * config/tc-microblaze.c (parse_imm): Fix compile time warning + message extending a negative 32-bit value into a larger signed + value on a 32-bit host. + 2016-01-29 H.J. Lu PR gas/19532 diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c index 01341d4..5484b30 100644 --- a/gas/config/tc-microblaze.c +++ b/gas/config/tc-microblaze.c @@ -737,9 +737,9 @@ parse_imm (char * s, expressionS * e, offsetT min, offsetT max) as_fatal (_("operand must be a constant or a label")); else if (e->X_op == O_constant) { - /* Special case: sign extend negative 32-bit values to 64-bits. */ + /* Special case: sign extend negative 32-bit values to offsetT size. */ if ((e->X_add_number >> 31) == 1) - e->X_add_number |= -((offsetT) 1 << 31); + e->X_add_number |= -((addressT) (1U << 31)); if (e->X_add_number < min || e->X_add_number > max) { -- 2.7.4