From eff0bc54a343fed1dd152f0a1b455b2438f76e6f Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 11 Aug 2015 10:07:21 +0100 Subject: [PATCH] Fix compile time warning messages about constant expressions where a value is being shifted into bit 31. PR gas/18765 * config/tc-arm.c (move_or_literal_pool): Use U suffix to remove compile time warnings about constant expressions being shifted into bit 31. (do_iwmmxt_wldstd): Likewise. (do_iwmmxt_wrwrwr_or_imm5): Likewise. (md_assemble): Likewise. --- gas/ChangeLog | 8 ++++++++ gas/config/tc-arm.c | 10 +++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 2e5aa4fdcfe..9cf4ab4ffad 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,13 @@ 2015-08-11 Nick Clifton + PR gas/18765 + * config/tc-arm.c (move_or_literal_pool): Use U suffix to remove + compile time warnings about constant expressions being shifted + into bit 31. + (do_iwmmxt_wldstd): Likewise. + (do_iwmmxt_wrwrwr_or_imm5): Likewise. + (md_assemble): Likewise. + PR gas/18574 * config/tc-msp430.c (msp430_operands): Rewrite if statements to remove redundant checks. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 899bfa20ae8..b7edb5e06f5 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -8000,9 +8000,9 @@ move_or_literal_pool (int i, enum lit_type t, bfd_boolean mode_3) /* Fill other bits in vmov encoding for both thumb and arm. */ if (thumb_mode) - inst.instruction |= (0x7 << 29) | (0xF << 24); + inst.instruction |= (0x7U << 29) | (0xF << 24); else - inst.instruction |= (0xF << 28) | (0x1 << 25); + inst.instruction |= (0xFU << 28) | (0x1 << 25); neon_write_immbits (immbits); return TRUE; } @@ -9974,7 +9974,7 @@ do_iwmmxt_wldstd (void) && inst.operands[1].immisreg) { inst.instruction &= ~0x1a000ff; - inst.instruction |= (0xf << 28); + inst.instruction |= (0xfU << 28); if (inst.operands[1].preind) inst.instruction |= PRE_INDEX; if (!inst.operands[1].negative) @@ -10053,7 +10053,7 @@ do_iwmmxt_wrwrwr_or_imm5 (void) } /* Map 32 -> 0, etc. */ inst.operands[2].imm &= 0x1f; - inst.instruction |= (0xf << 28) | ((inst.operands[2].imm & 0x10) << 4) | (inst.operands[2].imm & 0xf); + inst.instruction |= (0xfU << 28) | ((inst.operands[2].imm & 0x10) << 4) | (inst.operands[2].imm & 0xf); } } @@ -17975,7 +17975,7 @@ md_assemble (char *str) inst.instruction = opcode->avalue; if (opcode->tag == OT_unconditionalF) - inst.instruction |= 0xF << 28; + inst.instruction |= 0xFU << 28; else inst.instruction |= inst.cond << 28; inst.size = INSN_SIZE; -- 2.39.5