diff options
author | Stephane Carrez <stcarrez@nerim.fr> | 2003-04-26 11:53:36 +0000 |
---|---|---|
committer | Stephane Carrez <stcarrez@nerim.fr> | 2003-04-26 11:53:36 +0000 |
commit | d204f4c0f9c93e87dfd814795909e19726e14223 (patch) | |
tree | 70a193810c724e61574490156dad264febce8553 /ld/testsuite/ld-m68hc11/bug-3331.s | |
parent | aaa222e7b029c17f562198fc520f485dbc3646c5 (diff) | |
download | gdb-d204f4c0f9c93e87dfd814795909e19726e14223.zip gdb-d204f4c0f9c93e87dfd814795909e19726e14223.tar.gz gdb-d204f4c0f9c93e87dfd814795909e19726e14223.tar.bz2 |
PR savannah/3331:
* elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group
when we couldn't relax something.
* ld-m68hc11/bug-3331.d: New test.
* ld-m68hc11/bug-3331.s: New file.
Diffstat (limited to 'ld/testsuite/ld-m68hc11/bug-3331.s')
-rw-r--r-- | ld/testsuite/ld-m68hc11/bug-3331.s | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ld/testsuite/ld-m68hc11/bug-3331.s b/ld/testsuite/ld-m68hc11/bug-3331.s new file mode 100644 index 0000000..19a3201 --- /dev/null +++ b/ld/testsuite/ld-m68hc11/bug-3331.s @@ -0,0 +1,23 @@ +;;; Bug #3331: Invalid group relaxation, bset uses an invalid address +;;; http://savannah.gnu.org/bugs/?func=detailbug&bug_id=3331&group_id=2424 +;;; + .sect .text + .globl _start +_start: + .relax L1 + ldx #foo ;; This relax group must not be changed. + bset 0,x #4 +L1: + ldd #2 + std table ;; This instruction uses a symbol in page0 + ;; and it triggered the relaxation of the + ;; previous relax group + rts + + .sect .page0 + .globl table +table: .long 0 + + .sect .data + .globl foo +foo: .long 0 |