[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gas 2.11.2 mishandles sparc `.uaword' pseudo-ops
From: |
Nick Clifton |
Subject: |
Re: gas 2.11.2 mishandles sparc `.uaword' pseudo-ops |
Date: |
12 Aug 2001 09:55:48 +0100 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 |
Hi TAKAI,
> 2001-08-08 TAKAI Kousuke <address@hidden>
>
> * config/tc-sparc.c (cons_fix_new_sparc): Move
> `sparc_no_align_cons = 0;' to...
> (s_uacons): ...here so that sparc_no_align_cons will get
> cleared properly.
Thank you very much for uncovering this problem and submitting your
patch. I have applied the patch to the sources and I have also
extended the sparc testsuite to check for the first problem that you
discovered; to make sure that it does not happen again in the future.
Cheers
Nick
2001-08-12 Nick Clifton <address@hidden>
* gas/sparc/unalign.s: Extend test to check .uaword with multiple
arguments.
* gas/sparc/unalign.d: Extend to expect unaligned relocs for both
arguments to .uaword.
Index: testsuite/gas/sparc/unalign.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/sparc/unalign.s,v
retrieving revision 1.2
diff -p -r1.2 unalign.s
*** unalign.s 2001/07/11 19:40:32 1.2
--- unalign.s 2001/08/12 08:54:24
*************** foo:
*** 9,12 ****
--- 9,14 ----
.byte 0x3
.byte 0x4
.byte 0x5
+ .uaword baz, bar
.byte 0x6
Index: testsuite/gas/sparc/unalign.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/sparc/unalign.d,v
retrieving revision 1.3
diff -p -r1.3 unalign.d
*** unalign.d 2001/07/11 19:40:32 1.3
--- unalign.d 2001/08/12 08:54:24
*************** Disassembly of section .data:
*** 12,15 ****
1: R_SPARC_UA32 fred
4: 00 02 00 00 (unimp|illtrap) 0x20000
6: R_SPARC_UA16 jim
! 8: 03 04 05 06 sethi %hi\(0x10141800\), %g1
--- 12,19 ----
1: R_SPARC_UA32 fred
4: 00 02 00 00 (unimp|illtrap) 0x20000
6: R_SPARC_UA16 jim
! 8: 03 04 05 00 sethi %hi\(0x10140000\), %g1
! b: R_SPARC_UA32 baz
! c: 00 00 00 00 unimp 0
! f: R_SPARC_UA32 bar
! 10: 00 00 00 06 unimp 0x6