From 36a87ad7c54beae5ee2855d2ddf67240366eb1fb Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 15 Jun 1994 16:49:51 +0000 Subject: [PATCH] * config/tc-mips.c (mips_ip): Permit non constant expressions in 'u' case: lets lui %hi(foo) work correctly. --- gas/ChangeLog | 5 +++++ gas/config/tc-mips.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 0200a5babaf..c0edad37dcd 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * config/tc-mips.c (mips_ip): Permit non constant expressions in + 'u' case: lets lui %hi(foo) work correctly. + Mon Jun 13 12:08:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 0ab2cdb047c..6195e9c3a85 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -4647,9 +4647,9 @@ mips_ip (str, ip) case 'u': /* upper 16 bits */ c = my_getSmallExpression (&imm_expr, s); - if (imm_expr.X_op != O_constant - || imm_expr.X_add_number < 0 - || imm_expr.X_add_number >= 0x10000) + if (imm_expr.X_op == O_constant + && (imm_expr.X_add_number < 0 + || imm_expr.X_add_number >= 0x10000)) as_bad ("lui expression not in range 0..65535"); imm_reloc = BFD_RELOC_LO16; if (c) -- 2.30.2