This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: m68hc11 trampolines
- From: Alan Modra <amodra at gmail dot com>
- To: James Murray <jsm at jsm-net dot demon dot co dot uk>, binutils at sourceware dot org
- Date: Mon, 13 Feb 2012 13:02:09 +1030
- Subject: Re: m68hc11 trampolines
- References: <ADFB3A72-FDFA-4402-A6D5-CADEA94D0ED2@adacore.com> <1324230304.8652.3.camel@jsm2> <81013813-59AA-4061-8C6C-727D10F02149@adacore.com> <1324323896.8652.34.camel@jsm2> <1324389068.8652.70.camel@jsm2> <6273DF63-6E89-4A92-9FEF-52CFFE3E22C6@adacore.com> <1324392565.8652.73.camel@jsm2> <1325173546.2430.127.camel@jsm2> <1325211174.2430.145.camel@jsm2> <20120209125301.GS22267@bubble.grove.modra.org>
On Thu, Feb 09, 2012 at 11:23:01PM +1030, Alan Modra wrote:
> On Fri, Dec 30, 2011 at 02:12:54AM +0000, James Murray wrote:
> > What does this mean and what needs doing to get the m68hc11 trampoline
> > code back?
>
> Try this.
Now committed.
bfd/
* elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
* elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
* elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
* elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
gas/testsuite/
* gas/all/gas.exp (redef2): xfail m6811 and m6812.
* gas/elf/elf.exp: Use is_elf_format.
* gas/symver/symver.exp: Likewise.
* gas/m68hc11/m68hc11.exp: Simplify target test.
Add -m68hc11 to error tests that pass for hc12.
ld/testsuite/
* ld-m68hc11/m68hc11.exp: Run for m68hc11-*-* and m68hc12-*-*.
* ld-m68hc11/adj-brset.d: Remove redundant #target line. Add
-m m68hc11elf to ld invocation.
* ld-m68hc11/adj-jump.d: Likewise.
* ld-m68hc11/bug-1403.d: Likewise.
* ld-m68hc11/bug-1417.d: Likewise.
* ld-m68hc11/bug-3331.d: Likewise.
* ld-m68hc11/relax-direct.d: Likewise.
* ld-m68hc11/relax-group.d: Likewise.
* ld-m68hc11/far-hc11.d: Remove redundant #target line. Adjust for
changed addresses.
* ld-m68hc11/far-hc12.d: Remove redundant #target line.
* ld-m68hc11/link-hcs12.d: Likewise, and adjust for header changes.
Index: bfd/elf32-m68hc1x.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-m68hc1x.c,v
retrieving revision 1.40
diff -u -p -r1.40 elf32-m68hc1x.c
--- bfd/elf32-m68hc1x.c 2 Jun 2011 13:43:14 -0000 1.40
+++ bfd/elf32-m68hc1x.c 10 Feb 2012 03:32:25 -0000
@@ -1,6 +1,6 @@
/* Motorola 68HC11/HC12-specific support for 32-bit ELF
Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
- 2009, 2010, 2011 Free Software Foundation, Inc.
+ 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@nerim.fr)
This file is part of BFD, the Binary File Descriptor library.
@@ -214,6 +214,20 @@ elf32_m68hc11_add_symbol_hook (bfd *abfd
return TRUE;
}
+/* Merge non-visibility st_other attributes, STO_M68HC12_FAR and
+ STO_M68HC12_INTERRUPT. */
+
+void
+elf32_m68hc11_merge_symbol_attribute (struct elf_link_hash_entry *h,
+ const Elf_Internal_Sym *isym,
+ bfd_boolean definition,
+ bfd_boolean dynamic ATTRIBUTE_UNUSED)
+{
+ if (definition)
+ h->other = ((isym->st_other & ~ELF_ST_VISIBILITY (-1))
+ | ELF_ST_VISIBILITY (h->other));
+}
+
/* External entry points for sizing and building linker stubs. */
/* Set up various things so that we can make a list of input sections
Index: bfd/elf32-m68hc1x.h
===================================================================
RCS file: /cvs/src/src/bfd/elf32-m68hc1x.h,v
retrieving revision 1.11
diff -u -p -r1.11 elf32-m68hc1x.h
--- bfd/elf32-m68hc1x.h 4 Feb 2010 09:16:39 -0000 1.11
+++ bfd/elf32-m68hc1x.h 10 Feb 2012 03:32:25 -0000
@@ -1,5 +1,5 @@
/* Motorola 68HC11/68HC12-specific support for 32-bit ELF
- Copyright 2003, 2004, 2005, 2006, 2007, 2009, 2010
+ Copyright 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2012
Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@nerim.fr)
@@ -176,6 +176,10 @@ bfd_boolean elf32_m68hc11_add_symbol_hoo
flagword *flagsp, asection **secp,
bfd_vma *valp);
+void elf32_m68hc11_merge_symbol_attribute
+ (struct elf_link_hash_entry *, const Elf_Internal_Sym *,
+ bfd_boolean, bfd_boolean);
+
/* Tweak the OSABI field of the elf header. */
extern void elf32_m68hc11_post_process_headers (bfd*, struct bfd_link_info*);
Index: bfd/elf32-m68hc11.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-m68hc11.c,v
retrieving revision 1.40
diff -u -p -r1.40 elf32-m68hc11.c
--- bfd/elf32-m68hc11.c 25 Aug 2010 14:53:42 -0000 1.40
+++ bfd/elf32-m68hc11.c 10 Feb 2012 03:32:24 -0000
@@ -1,5 +1,5 @@
/* Motorola 68HC11-specific support for 32-bit ELF
- Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2010
+ Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2010, 2012
Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@nerim.fr)
(Heavily copied from the D10V port by Martin Hunt (hunt@cygnus.com))
@@ -1302,6 +1302,7 @@ static const struct bfd_elf_special_sect
#define elf_backend_final_write_processing 0
#define elf_backend_can_gc_sections 1
#define elf_backend_special_sections elf32_m68hc11_special_sections
+#define elf_backend_merge_symbol_attribute elf32_m68hc11_merge_symbol_attribute
#define bfd_elf32_bfd_link_hash_table_create \
m68hc11_elf_bfd_link_hash_table_create
Index: bfd/elf32-m68hc12.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-m68hc12.c,v
retrieving revision 1.30
diff -u -p -r1.30 elf32-m68hc12.c
--- bfd/elf32-m68hc12.c 25 Aug 2010 14:53:42 -0000 1.30
+++ bfd/elf32-m68hc12.c 10 Feb 2012 03:32:24 -0000
@@ -1,5 +1,5 @@
/* Motorola 68HC12-specific support for 32-bit ELF
- Copyright 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007
+ Copyright 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2010, 2012
Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@nerim.fr)
(Heavily copied from the D10V port by Martin Hunt (hunt@cygnus.com))
@@ -581,6 +581,7 @@ static const struct bfd_elf_special_sect
#define elf_backend_special_sections elf32_m68hc12_special_sections
#define elf_backend_post_process_headers elf32_m68hc11_post_process_headers
#define elf_backend_add_symbol_hook elf32_m68hc11_add_symbol_hook
+#define elf_backend_merge_symbol_attribute elf32_m68hc11_merge_symbol_attribute
#define bfd_elf32_bfd_link_hash_table_create \
m68hc12_elf_bfd_link_hash_table_create
Index: gas/testsuite/gas/all/gas.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/all/gas.exp,v
retrieving revision 1.74
diff -u -p -r1.74 gas.exp
--- gas/testsuite/gas/all/gas.exp 14 May 2011 00:52:07 -0000 1.74
+++ gas/testsuite/gas/all/gas.exp 10 Feb 2012 06:27:48 -0000
@@ -132,9 +132,11 @@ case $target_triplet in {
run_dump_test redef
# These targets fail redef2 because they disallow redefined
# symbols on relocs.
- setup_xfail "m68hc*-*-*" "rx-*-*" "vax*-*-*" "z8k-*-*"
+ setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*"
+ setup_xfail "rx-*-*" "vax*-*-*" "z8k-*-*"
run_dump_test redef2
- setup_xfail "m68hc*-*-*" "rx-*-*" "vax*-*-*" "z8k-*-*"
+ setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*"
+ setup_xfail "rx-*-*" "vax*-*-*" "z8k-*-*"
# rs6000-aix disallows redefinition via .comm.
setup_xfail "*-*-aix*"
# SOM uses a different syntax for .comm
Index: gas/testsuite/gas/elf/elf.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/elf/elf.exp,v
retrieving revision 1.78
diff -u -p -r1.78 elf.exp
--- gas/testsuite/gas/elf/elf.exp 4 Aug 2011 20:20:11 -0000 1.78
+++ gas/testsuite/gas/elf/elf.exp 10 Feb 2012 06:27:52 -0000
@@ -37,19 +37,7 @@ proc run_elf_list_test { name suffix opt
}
# We're testing bits in obj-elf -- don't run on anything else.
-if { ([istarget "*-*-*elf*"]
- || [istarget "*-*-linux*"]
- || [istarget "*-*-gnu*"]
- || [istarget "m6811-*"]
- || [istarget "m6812-*"]
- || [istarget "sparc*-*-solaris*"]
- || [istarget "mips*-*-irix6*"]
- || [istarget "arm*-*-eabi"])
- && ![istarget *-*-linux*aout*]
- && ![istarget *-*-linux*coff*]
- && ![istarget *-*-linux*oldld*]
- && ![istarget sh64*-*-linux*]
-} then {
+if { [is_elf_format] } then {
set target_machine ""
if {[istarget "mips*-*-*"]} then {
set target_machine -mips
Index: gas/testsuite/gas/m68hc11/m68hc11.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/m68hc11/m68hc11.exp,v
retrieving revision 1.7
diff -u -p -r1.7 m68hc11.exp
--- gas/testsuite/gas/m68hc11/m68hc11.exp 1 Aug 2004 19:59:51 -0000 1.7
+++ gas/testsuite/gas/m68hc11/m68hc11.exp 10 Feb 2012 06:27:52 -0000
@@ -1,14 +1,10 @@
#
# Some generic m68HC11 tests
#
-if ![istarget "m68hc11-*-*"] then {
- if ![istarget "m6811-*-*"] then {
- if ![istarget "m68hc12-*-*"] then {
- if ![istarget "m6812-*-*"] then {
- return
- }
- }
- }
+if { ![istarget "m68hc1*-*-*"]
+ && ![istarget "m6811-*-*"]
+ && ![istarget "m6812-*-*"] } then {
+ return
}
# Simple test for --print-opcodes (list of supported opcodes)
@@ -80,21 +76,21 @@ proc gas_m68hc11_warning { options line
# ------------------
# 68HC11 error tests
-gas_m68hc11_error "" "puld\n" "Opcode .puld. is not recognized"
+gas_m68hc11_error "-m68hc11" "puld\n" "Opcode .puld. is not recognized"
gas_m68hc11_error "" "ldab\n" "Invalid operand for .ldab."
-gas_m68hc11_error "" "ldab 256,x\n" "Operand out of 8-bit range:.*256"
-gas_m68hc11_error "" "ldab 257,y\n" "Operand out of 8-bit range:.*257"
-gas_m68hc11_error "" "ldab -1,y\n" "Operand out of 8-bit range:.*-1"
-gas_m68hc11_error "" "ldab bar,y\nbar=300" "value of 300 too large for field of 1 byte"
+gas_m68hc11_error "-m68hc11" "ldab 256,x\n" "Operand out of 8-bit range:.*256"
+gas_m68hc11_error "-m68hc11" "ldab 257,y\n" "Operand out of 8-bit range:.*257"
+gas_m68hc11_error "-m68hc11" "ldab -1,y\n" "Operand out of 8-bit range:.*-1"
+gas_m68hc11_error "-m68hc11" "ldab bar,y\nbar=300" "value of 300 too large for field of 1 byte"
gas_m68hc11_error "" "jmp \#23\n" "Immediate operand is not allowed"
-gas_m68hc11_error "" "ldab \[d,pc\]\n" "Indirect indexed addressing is not valid for 68HC11"
+gas_m68hc11_error "-m68hc11" "ldab \[d,pc\]\n" "Indirect indexed addressing is not valid for 68HC11"
gas_m68hc11_error "" "ldab ,t\n" "Spurious .,. or bad indirect register"
gas_m68hc11_error "" "ldab 1,t\n" "Garbage at end of instruction:.*,t"
gas_m68hc11_error "" "ldab 1,,x\n" "Garbage at end of instruction:.*,x"
-gas_m68hc11_error "" "ldab 1,+x\n" "Pre-increment mode is not valid"
-gas_m68hc11_error "" "ldab 1,-x\n" "Pre-increment mode is not valid"
-gas_m68hc11_error "" "ldab 1,x+\n" "Post-increment mode is not valid"
-gas_m68hc11_error "" "ldab 1,x-\n" "Post-decrement mode is not valid"
+gas_m68hc11_error "-m68hc11" "ldab 1,+x\n" "Pre-increment mode is not valid"
+gas_m68hc11_error "-m68hc11" "ldab 1,-x\n" "Pre-increment mode is not valid"
+gas_m68hc11_error "-m68hc11" "ldab 1,x+\n" "Post-increment mode is not valid"
+gas_m68hc11_error "-m68hc11" "ldab 1,x-\n" "Post-decrement mode is not valid"
gas_m68hc11_error "" "ldd \#65536\n" "Operand out of 16-bit range"
gas_m68hc11_error "--short-branchs" "bne 200\n" \
"Operand out of range for a relative branch"
Index: gas/testsuite/gas/symver/symver.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/symver/symver.exp,v
retrieving revision 1.6
diff -u -p -r1.6 symver.exp
--- gas/testsuite/gas/symver/symver.exp 20 Nov 2010 15:36:33 -0000 1.6
+++ gas/testsuite/gas/symver/symver.exp 10 Feb 2012 06:27:53 -0000
@@ -15,13 +15,7 @@ proc run_error_test { name opts } {
}
# symver is only supported by ELF targets.
-if { ([istarget "*-*-elf*"]
- || [istarget "m6811-*"]
- || [istarget "m6812-*"]
- || [istarget "*-*-linux*"]
- || [istarget "*-*-gnu*"])
- && ![istarget *-*-linux*aout*]
- && ![istarget *-*-linux*oldld*] } then {
+if { [is_elf_format] } then {
if {[istarget "ia64-*"]} then {
return
Index: ld/testsuite/ld-m68hc11/m68hc11.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/m68hc11.exp,v
retrieving revision 1.4
diff -u -p -r1.4 m68hc11.exp
--- ld/testsuite/ld-m68hc11/m68hc11.exp 2 Sep 2009 07:25:40 -0000 1.4
+++ ld/testsuite/ld-m68hc11/m68hc11.exp 10 Feb 2012 03:33:11 -0000
@@ -22,7 +22,8 @@
# Test 68HC11 relaxing. This tests the assembler as well as the linker.
-if { ![istarget m6811-*-*] && ![istarget m6812-*-*] } {
+if { ![istarget m6811-*-*] && ![istarget m6812-*-*]
+ && ![istarget m68hc11-*-*] && ![istarget m68hc12-*-*] } {
return
}
Index: ld/testsuite/ld-m68hc11/adj-brset.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/adj-brset.d,v
retrieving revision 1.1
diff -u -p -r1.1 adj-brset.d
--- ld/testsuite/ld-m68hc11/adj-brset.d 14 Oct 2002 21:20:16 -0000 1.1
+++ ld/testsuite/ld-m68hc11/adj-brset.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: adj-brset.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32\-m68hc11
Index: ld/testsuite/ld-m68hc11/adj-jump.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/adj-jump.d,v
retrieving revision 1.1
diff -u -p -r1.1 adj-jump.d
--- ld/testsuite/ld-m68hc11/adj-jump.d 14 Oct 2002 21:20:16 -0000 1.1
+++ ld/testsuite/ld-m68hc11/adj-jump.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: adj-jump.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32\-m68hc11
Index: ld/testsuite/ld-m68hc11/bug-1403.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/bug-1403.d,v
retrieving revision 1.1
diff -u -p -r1.1 bug-1403.d
--- ld/testsuite/ld-m68hc11/bug-1403.d 14 Oct 2002 21:20:16 -0000 1.1
+++ ld/testsuite/ld-m68hc11/bug-1403.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: bug-1403.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32-m68hc11
Index: ld/testsuite/ld-m68hc11/bug-1417.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/bug-1417.d,v
retrieving revision 1.2
diff -u -p -r1.2 bug-1417.d
--- ld/testsuite/ld-m68hc11/bug-1417.d 4 Apr 2003 21:17:59 -0000 1.2
+++ ld/testsuite/ld-m68hc11/bug-1417.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: bug-1417.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32-m68hc11
Index: ld/testsuite/ld-m68hc11/bug-3331.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/bug-3331.d,v
retrieving revision 1.1
diff -u -p -r1.1 bug-3331.d
--- ld/testsuite/ld-m68hc11/bug-3331.d 26 Apr 2003 11:53:36 -0000 1.1
+++ ld/testsuite/ld-m68hc11/bug-3331.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: bug-3331.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32-m68hc11
Index: ld/testsuite/ld-m68hc11/far-hc11.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/far-hc11.d,v
retrieving revision 1.1
diff -u -p -r1.1 far-hc11.d
--- ld/testsuite/ld-m68hc11/far-hc11.d 21 Apr 2003 13:30:14 -0000 1.1
+++ ld/testsuite/ld-m68hc11/far-hc11.d 10 Feb 2012 03:33:11 -0000
@@ -2,31 +2,30 @@
#as: -m68hc11
#ld: -m m68hc11elf
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: file format elf32-m68hc11
Disassembly of section .text:
0+8000 <tramp._far_foo> pshb
0+8001 <tramp._far_foo\+0x1> ldab \#0
-0+8003 <tramp._far_foo\+0x3> ldy \#0+6c <_far_foo>
+0+8003 <tramp._far_foo\+0x3> ldy \#0+8072 <_far_foo>
0+8007 <tramp._far_foo\+0x7> jmp 0+8056 <__far_trampoline>
0+800a <tramp._far_bar> pshb
0+800b <tramp._far_bar\+0x1> ldab \#0
-0+800d <tramp._far_bar\+0x3> ldy \#0+64 <stack>
+0+800d <tramp._far_bar\+0x3> ldy \#0+806a .*
0+8011 <tramp._far_bar\+0x7> jmp 0+8056 <__far_trampoline>
0+8014 <_start> lds \#0+64 <stack>
-0+8017 <_start\+0x3> ldx \#0+abcd <__data_image\+0x2b63>
+0+8017 <_start\+0x3> ldx \#0+abcd .*
0+801a <_start\+0x6> pshx
-0+801b <_start\+0x7> ldd \#0+1234 <__data_section_start\+0x134>
-0+801e <_start\+0xa> ldx \#0+5678 <__data_section_start\+0x4578>
+0+801b <_start\+0x7> ldd \#0+1234 .*
+0+801e <_start\+0xa> ldx \#0+5678 .*
0+8021 <_start\+0xd> jsr 0+800a <tramp._far_bar>
-0+8024 <_start\+0x10> cpx \#0+1234 <__data_section_start\+0x134>
+0+8024 <_start\+0x10> cpx \#0+1234 .*
0+8027 <_start\+0x13> bne 0+804e <fail>
-0+8029 <_start\+0x15> cpd \#0+5678 <__data_section_start\+0x4578>
+0+8029 <_start\+0x15> cpd \#0+5678 .*
0+802d <_start\+0x19> bne 0+804e <fail>
0+802f <_start\+0x1b> pulx
-0+8030 <_start\+0x1c> cpx \#0+abcd <__data_image\+0x2b63>
+0+8030 <_start\+0x1c> cpx \#0+abcd .*
0+8033 <_start\+0x1f> bne 0+804e <fail>
0+8035 <_start\+0x21> ldd \#0+8000 <tramp._far_foo>
0+8038 <_start\+0x24> xgdx
@@ -35,7 +34,7 @@ Disassembly of section .text:
0+803e <_start\+0x2a> xgdy
0+8040 <_start\+0x2c> jsr 0,y
0+8043 <_start\+0x2f> ldaa \#0
-0+8045 <_start\+0x31> ldy \#0+73 <_far_no_tramp>
+0+8045 <_start\+0x31> ldy \#0+8079 <_far_no_tramp>
0+8049 <_start\+0x35> bsr 0+8066 <__call_a16>
0+804b <_start\+0x37> clra
0+804c <_start\+0x38> clrb
@@ -59,15 +58,15 @@ Disassembly of section .text:
0+8066 <__call_a16> psha
0+8067 <__call_a16\+0x1> jmp 0,y
Disassembly of section .bank1:
-0+64 <_far_bar> jsr 0+6b <local_bank1>
-0+67 <_far_bar\+0x3> xgdx
-0+68 <_far_bar\+0x4> jmp 0+8054 <__return>
-0+6b <local_bank1> rts
+0+806a <_far_bar> jsr 0+8071 <local_bank1>
+0+806d <_far_bar\+0x3> xgdx
+0+806e <_far_bar\+0x4> jmp 0+8054 <__return>
+0+8071 <local_bank1> rts
Disassembly of section .bank2:
-0+6c <_far_foo> jsr 0+72 <local_bank2>
-0+6f <_far_foo\+0x3> jmp 0+8054 <__return>
-0+72 <local_bank2> rts
+0+8072 <_far_foo> jsr 0+8078 <local_bank2>
+0+8075 <_far_foo\+0x3> jmp 0+8054 <__return>
+0+8078 <local_bank2> rts
Disassembly of section .bank3:
-0+73 <_far_no_tramp> jsr 0+79 <local_bank3>
-0+76 <_far_no_tramp\+0x3> jmp 0+8054 <__return>
-0+79 <local_bank3> rts
+0+8079 <_far_no_tramp> jsr 0+807f <local_bank3>
+0+807c <_far_no_tramp\+0x3> jmp 0+8054 <__return>
+0+807f <local_bank3> rts
Index: ld/testsuite/ld-m68hc11/far-hc12.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/far-hc12.d,v
retrieving revision 1.1
diff -u -p -r1.1 far-hc12.d
--- ld/testsuite/ld-m68hc11/far-hc12.d 21 Apr 2003 13:30:14 -0000 1.1
+++ ld/testsuite/ld-m68hc11/far-hc12.d 10 Feb 2012 03:33:11 -0000
@@ -2,7 +2,6 @@
#as: -m68hc12
#ld: -m m68hc12elf --script $srcdir/$subdir/far-hc12.ld
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: file format elf32\-m68hc12
Index: ld/testsuite/ld-m68hc11/link-hcs12.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/link-hcs12.d,v
retrieving revision 1.1
diff -u -p -r1.1 link-hcs12.d
--- ld/testsuite/ld-m68hc11/link-hcs12.d 13 May 2003 19:11:45 -0000 1.1
+++ ld/testsuite/ld-m68hc11/link-hcs12.d 10 Feb 2012 03:33:11 -0000
@@ -3,17 +3,12 @@
#as: -mshort
#ld: -m m68hc12elf
#objdump: -p -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: file format elf32\-m68hc12
Program Header:
- LOAD off 0x0+ vaddr 0x0+1000 paddr 0x0+1000 align 2\*\*12
- filesz 0x0+100 memsz 0x0+100 flags rw-
LOAD off 0x0+1000 vaddr 0x0+8000 paddr 0x0+8000 align 2\*\*12
filesz 0x0+6 memsz 0x0+6 flags r-x
- LOAD off 0x0+1100 vaddr 0x0+1100 paddr 0x0+8006 align 2\*\*12
- filesz 0x0+ memsz 0x0+ flags rw-
private flags = 22:\[abi=16\-bit int, 64\-bit double, cpu=HCS12\] \[memory=flat\]
Disassembly of section .text:
Index: ld/testsuite/ld-m68hc11/relax-direct.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/relax-direct.d,v
retrieving revision 1.1
diff -u -p -r1.1 relax-direct.d
--- ld/testsuite/ld-m68hc11/relax-direct.d 14 Oct 2002 21:20:16 -0000 1.1
+++ ld/testsuite/ld-m68hc11/relax-direct.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: relax-direct.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32-m68hc11
Index: ld/testsuite/ld-m68hc11/relax-group.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-m68hc11/relax-group.d,v
retrieving revision 1.1
diff -u -p -r1.1 relax-group.d
--- ld/testsuite/ld-m68hc11/relax-group.d 14 Oct 2002 21:20:16 -0000 1.1
+++ ld/testsuite/ld-m68hc11/relax-group.d 10 Feb 2012 03:33:11 -0000
@@ -1,8 +1,7 @@
#source: relax-group.s
#as: -m68hc11
-#ld: --relax
+#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
-#target: m6811-*-* m6812-*-*
.*: +file format elf32-m68hc11
--
Alan Modra
Australia Development Lab, IBM