aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2000-04-13 01:08:05 +0000
committerAlan Modra <amodra@gmail.com>2000-04-13 01:08:05 +0000
commitfc633e5b9780011f74f2c23837968e43e262a239 (patch)
tree5ccc69c4b1e69941727cee9ebe0a9a7fcd31de32 /gas
parent3db10f32e0e0cbf960edcdf6ed42ccb3bc7c4952 (diff)
downloadgdb-fc633e5b9780011f74f2c23837968e43e262a239.zip
gdb-fc633e5b9780011f74f2c23837968e43e262a239.tar.gz
gdb-fc633e5b9780011f74f2c23837968e43e262a239.tar.bz2
Remove U suffix from constants for K&R compilers.
Fix a couple of 64 bit nits.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-arm.c12
2 files changed, 11 insertions, 6 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index bacb74e..4bbe674 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2000-04-13 Alan Modra <alan@linuxcare.com.au>
+
+ * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
+ constants, and don't assume offsetT is 32 bits.
+
2000-04-12 Andrew Cagney <cagney@b1.cygnus.com>
* config/tc-d10v.h: Include "write.h" to get definition of fixS.
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index 53c6b2f..f4f7398 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -5571,8 +5571,8 @@ md_apply_fix3 (fixP, val, seg)
instruction, in a 24 bit, signed field. Thus we need to check
that none of the top 8 bits of the shifted value (top 7 bits of
the unshifted, unsigned value) are set, or that they are all set. */
- if ((value & 0xfe000000UL) != 0
- && ((value & 0xfe000000UL) != 0xfe000000UL))
+ if ((value & ~ ((offsetT) 0x1ffffff)) != 0
+ && ((value & ~ ((offsetT) 0x1ffffff)) != ~ ((offsetT) 0x1ffffff)))
{
#ifdef OBJ_ELF
/* Normally we would be stuck at this point, since we cannot store
@@ -5595,8 +5595,8 @@ md_apply_fix3 (fixP, val, seg)
/* Permit a backward branch provided that enough bits are set.
Allow a forwards branch, provided that enough bits are clear. */
- if ((value & 0xfe000000UL) == 0xfe000000UL
- || (value & 0xfe000000UL) == 0)
+ if ((value & ~ ((offsetT) 0x1ffffff)) == ~ ((offsetT) 0x1ffffff)
+ || (value & ~ ((offsetT) 0x1ffffff)) == 0)
fixP->fx_done = 1;
}
@@ -5609,8 +5609,8 @@ md_apply_fix3 (fixP, val, seg)
value >>= 2;
value += SEXT24 (newval);
- if ((value & 0xff000000UL) != 0
- && ((value & 0xff000000UL) != 0xff000000UL))
+ if ((value & ~ ((offsetT) 0xffffff)) != 0
+ && ((value & ~ ((offsetT) 0xffffff)) != ~ ((offsetT) 0xffffff)))
as_bad_where (fixP->fx_file, fixP->fx_line,
_("out of range branch"));