This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[gas] fix m32c relocation math
- From: DJ Delorie <dj at redhat dot com>
- To: binutils at sourceware dot org
- Date: Tue, 25 Nov 2008 18:02:06 -0500
- Subject: [gas] fix m32c relocation math
Committed.
2008-11-25 DJ Delorie <dj@redhat.com>
* config/tc-m32c.c (md_convert_frag): Fix ADJNZ reloc math.
Index: config/tc-m32c.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-m32c.c,v
retrieving revision 1.17
diff -p -U3 -r1.17 tc-m32c.c
--- config/tc-m32c.c 12 Aug 2008 23:39:30 -0000 1.17
+++ config/tc-m32c.c 25 Nov 2008 21:11:21 -0000
@@ -866,22 +866,22 @@ md_convert_frag (bfd * abfd ATTRIBUTE_
case -M32C_MACRO_ADJNZ_2:
rl_addend = 0x31;
- op[2] = addend;
+ op[2] = addend - 2;
operand = M32C_OPERAND_LAB_16_8;
break;
case -M32C_MACRO_ADJNZ_3:
rl_addend = 0x41;
- op[3] = addend;
+ op[3] = addend - 2;
operand = M32C_OPERAND_LAB_24_8;
break;
case -M32C_MACRO_ADJNZ_4:
rl_addend = 0x51;
- op[4] = addend;
+ op[4] = addend - 2;
operand = M32C_OPERAND_LAB_32_8;
break;
case -M32C_MACRO_ADJNZ_5:
rl_addend = 0x61;
- op[5] = addend;
+ op[5] = addend - 2;
operand = M32C_OPERAND_LAB_40_8;
break;