Fixes a snafu checking the size of 20-bit immedaite values.
authorNick Clifton <nickc@redhat.com>
Mon, 3 Nov 2014 11:15:53 +0000 (11:15 +0000)
committerNick Clifton <nickc@redhat.com>
Mon, 3 Nov 2014 11:15:53 +0000 (11:15 +0000)
* config/tc-msp430.c (msp430_srcoperand): Fix range test for
20-bit values.

gas/ChangeLog
gas/config/tc-msp430.c

index a1a4224a64706b8edf075c746e372c7f3ac25cb7..18ceb94f1996410c9d77d782adce0513ed1890ad 100644 (file)
@@ -1,3 +1,8 @@
+2014-11-03  Nick Clifton  <nickc@redhat.com>
+
+       * config/tc-msp430.c (msp430_srcoperand): Fix range test for
+       20-bit values.
+
 2014-10-31  Andrew Pinski  <apinski@cavium.com>
             Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
 
index 1398b8c2acddd3af2d9ab61234034eac276b0692..25ec0ee45b75a2cdcc7c5655551130c07bbe5bcd 100644 (file)
@@ -1132,7 +1132,7 @@ msp430_srcoperand (struct msp430_operand_s * op,
 
          if (allow_20bit_values)
            {
-             if (op->exp.X_add_number > 0xfffff || op->exp.X_add_number < - (0x7ffff))
+             if (op->exp.X_add_number > 0xfffff || op->exp.X_add_number < -524288)
                {
                  as_bad (_("value 0x%x out of extended range."), x);
                  return 1;