aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2012-02-27 12:36:21 +0000
committerAlan Modra <amodra@gmail.com>2012-02-27 12:36:21 +0000
commit805e800d043bc07719e6308bc07ea22d871d4961 (patch)
tree252d74546d0291e49cd6fd6ba2a4317d5d704261 /gas
parent709bcda1f4cadba77857bb163156ffc170222b77 (diff)
downloadgdb-805e800d043bc07719e6308bc07ea22d871d4961.zip
gdb-805e800d043bc07719e6308bc07ea22d871d4961.tar.gz
gdb-805e800d043bc07719e6308bc07ea22d871d4961.tar.bz2
* config/tc-crx.c (check_range): Correct uint32_t misconceptions.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/config/tc-crx.c7
2 files changed, 6 insertions, 5 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 47dede4..be8e7c5 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,9 @@
2012-02-27 Alan Modra <amodra@gmail.com>
+ * config/tc-crx.c (check_range): Correct uint32_t misconceptions.
+
+2012-02-27 Alan Modra <amodra@gmail.com>
+
* config/tc-tic4x.c (tic4x_do_align): Remove ATTRIBUTE_UNUSED on
params. Properly generate NOP pattern. Comment reason for
subseg_text_p failure.
diff --git a/gas/config/tc-crx.c b/gas/config/tc-crx.c
index 775781b..3b06a78 100644
--- a/gas/config/tc-crx.c
+++ b/gas/config/tc-crx.c
@@ -1331,9 +1331,6 @@ check_range (long *num, int bits, int unsigned flags, int update)
uint32_t upper_64kb = 0xffff0000;
uint32_t value = *num;
- /* Trim all values to 32 bits. uint32_t can be more than 32 bits. */
- value &= 0xffffffff;
-
/* Verify operand value is even. */
if (flags & OP_EVEN)
{
@@ -1361,7 +1358,7 @@ check_range (long *num, int bits, int unsigned flags, int update)
value is implementation defined. See ISO C 6.5.7. So we use
an unsigned type and sign extend afterwards. */
value >>= 1;
- value = ((value ^ 0x40000000) - 0x40000000) & 0xffffffff;
+ value = (value ^ 0x40000000) - 0x40000000;
if (update)
*num = value;
}
@@ -1407,7 +1404,7 @@ check_range (long *num, int bits, int unsigned flags, int update)
for (bin = 0; bin < cst4_maps; bin++)
{
- if (value == ((uint32_t) cst4_map[bin] & 0xffffffff))
+ if (value == (uint32_t) cst4_map[bin])
{
is_cst4 = 1;
if (update)