--- as/arm.c +++ as/arm.c @@ -17839,7 +17839,7 @@ { bfd_vma insn; bfd_vma encoded_addend; - bfd_vma addend_abs = abs (value); + bfd_vma addend_abs = abs ((int)value); /* Check that the absolute value of the addend can be expressed as an 8-bit constant plus a rotation. */ @@ -17884,7 +17884,7 @@ #endif { bfd_vma insn; - bfd_vma addend_abs = abs (value); + bfd_vma addend_abs = abs ((int)value); /* Check that the absolute value of the addend can be encoded in 12 bits. */ @@ -17927,7 +17927,7 @@ #endif { bfd_vma insn; - bfd_vma addend_abs = abs (value); + bfd_vma addend_abs = abs ((int)value); /* Check that the absolute value of the addend can be encoded in 8 bits. */ @@ -17971,7 +17971,7 @@ #endif { bfd_vma insn; - bfd_vma addend_abs = abs (value); + bfd_vma addend_abs = abs ((int)value); /* Check that the absolute value of the addend is a multiple of four and, when divided by four, fits in 8 bits. */