From mboxrd@z Thu Jan 1 00:00:00 1970 From: Philip Blundell To: gas2@cygnus.com Subject: gas patch for ARM Date: Tue, 27 Jan 1998 02:20:00 -0000 Message-id: X-SW-Source: 1998/msg00021.html Hi. The following patch makes ADR instructions work correctly when cross-assembling for the ARM from a machine with a word size greater than 32 bits. p. Tue Jan 27 10:06:45 1998 Philip Blundell * config/tc-arm.c (md_apply_fix3): Force sign extension to happen before comparing 32-bit values with FAIL. Index: tc-arm.c =================================================================== RCS file: /usr/repository/gnu/binutils/gas/config/tc-arm.c,v retrieving revision 1.3 diff -u -r1.3 tc-arm.c --- tc-arm.c 1998/01/16 10:00:19 1.3 +++ tc-arm.c 1998/01/21 11:38:37 @@ -5096,8 +5096,8 @@ /* If the instruction will fail, see if we can fix things up by changing the opcode. */ - if (newval == FAIL - && (newval = negate_data_op (&temp, value)) == FAIL) + if ((int)newval == FAIL + && ((int)(newval = negate_data_op (&temp, value))) == FAIL) { as_bad_where (fixP->fx_file, fixP->fx_line, "invalid constant after fixup\n");