From 98bfd087ca4d685bd1f5fee2125907fdfcaba2b0 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 31 May 1996 05:10:20 +0000 Subject: [PATCH] * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32 bit value with the high bit set. --- gas/ChangeLog | 13 +++++++------ gas/config/tc-mips.c | 16 +++++++++------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index a540075..9393d2a 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Fri May 31 01:08:06 1996 Ian Lance Taylor + + * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32 + bit value with the high bit set. + Thu May 30 19:00:19 1996 Ian Lance Taylor * read.c (s_lcomm): Set section flags for .sbss section. @@ -13,12 +18,8 @@ Thu May 30 19:00:19 1996 Ian Lance Taylor Thu May 30 10:36:19 1996 Michael Meissner - * config/tc-ppc.c (comment_chars): Under Solaris, make '!' a - comment character. - (ppc_elf_rdata): Add support for .rdata and .rodata to go to the - .rodata section. - - * config/ppc-sol.mt (TDEFINES): Define TARGET_SOLARIS_COMMENT. + * config/tc-ppc.c (comment_chars): Make '!' a comment character + for Solaris compatibility. * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a .stabd with 4 arguments into a .stabn. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index b8759b4..23df337 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -1838,13 +1838,15 @@ load_register (counter, reg, ep, dbl) (int) BFD_RELOC_LO16); return; } - else if (((ep->X_add_number &~ (offsetT) 0x7fffffff) == 0 - || ((ep->X_add_number &~ (offsetT) 0x7fffffff) - == ~ (offsetT) 0x7fffffff)) - && (! dbl - || ! ep->X_unsigned - || sizeof (ep->X_add_number) > 4 - || (ep->X_add_number & 0x80000000) == 0)) + else if ((((ep->X_add_number &~ (offsetT) 0x7fffffff) == 0 + || ((ep->X_add_number &~ (offsetT) 0x7fffffff) + == ~ (offsetT) 0x7fffffff)) + && (! dbl + || ! ep->X_unsigned + || sizeof (ep->X_add_number) > 4 + || (ep->X_add_number & 0x80000000) == 0)) + || (mips_isa < 3 + && (ep->X_add_number &~ 0xffffffff) == 0)) { /* 32 bit values require an lui. */ macro_build ((char *) NULL, counter, ep, "lui", "t,u", reg, -- 2.7.4