This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: "mvfc" fails regression for binutils-2.20.51


Hi Suma,

I am afraid there is another issue that I am facing in the LD regression this
time. The test case "rgn-over8" is failing with the following message:

   regexp "^  1 .data         0+0000400  0+0001000  0+0000400  [0-9a-f]+  2\*\*[0-9]+  CONTENTS, ALLOC, LOAD, DATA$"
   line   "  1 .data         00000400  00001000  00001000  00002000  2**0  CONTENTS, ALLOC, LOAD, DATA"

This took some tracking down. It turns out that there is a problem with the Renesas loader. It ignores the VMA field in the program header and only uses the LMA field. Thus the RX port of the linker has to set the LMA field to the VMA value, so that code will execute at the address that it is expecting. (The Renesas loader does not support loading code to a different address and then moving it before execution).


Hence this particular test, and the others like it, fail.

I am going to check in the attached patch to mark these tests as expected failures for the RX target.

Cheers
  Nick

ld/testsuite/ChangeLog

2009-11-18 Nick Clifton <nickc@redhat.com>

	* ld-elf/extract-symbol-1sec.d: Expect to fail for the RX target.
	* ld-scripts/overlay-size.d: Likewise.
	* ld-scripts/rgn-at1.d: Likewise.
	* ld-scripts/rgn-at2.d: Likewise.
	* ld-scripts/rgn-at3.d: Likewise.
	* ld-scripts/rgn-at4.d: Likewise.
	* ld-scripts/rgn-over8-ok.d: Likewise.

Index: ld/testsuite/ld-elf/extract-symbol-1sec.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-elf/extract-symbol-1sec.d,v
retrieving revision 1.4
diff -c -3 -p -r1.4 extract-symbol-1sec.d
*** ld/testsuite/ld-elf/extract-symbol-1sec.d	29 Sep 2008 14:12:02 -0000	1.4
--- ld/testsuite/ld-elf/extract-symbol-1sec.d	18 Nov 2009 16:35:25 -0000
***************
*** 3,9 ****
  #ld: -Textract-symbol-1.ld
  #objcopy_linked_file: --extract-symbol
  #objdump: --headers
! #xfail: "hppa*-*-*"
  #...
  Sections:
   *Idx +Name +Size +VMA +LMA .*
--- 3,10 ----
  #ld: -Textract-symbol-1.ld
  #objcopy_linked_file: --extract-symbol
  #objdump: --headers
! #xfail: "hppa*-*-*" "rx-*-*"
! # FAILS on the RX because the linker has to set LMA == VMA for the Renesas loader.
  #...
  Sections:
   *Idx +Name +Size +VMA +LMA .*
Index: ld/testsuite/ld-scripts/overlay-size.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/overlay-size.d,v
retrieving revision 1.3
diff -c -3 -p -r1.3 overlay-size.d
*** ld/testsuite/ld-scripts/overlay-size.d	14 Oct 2004 12:54:47 -0000	1.3
--- ld/testsuite/ld-scripts/overlay-size.d	18 Nov 2009 16:35:26 -0000
***************
*** 1,6 ****
--- 1,9 ----
  # ld: -T overlay-size.t -Map tmpdir/overlay-size.map
  # name: overlay size
  # objdump: --headers
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  #
  # The .bss[123] LMAs are deliberately blanked out.  We can't
  # reliably map overlaid sections to segments.
Index: ld/testsuite/ld-scripts/rgn-at1.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/rgn-at1.d,v
retrieving revision 1.2
diff -c -3 -p -r1.2 rgn-at1.d
*** ld/testsuite/ld-scripts/rgn-at1.d	22 Apr 2009 11:57:35 -0000	1.2
--- ld/testsuite/ld-scripts/rgn-at1.d	18 Nov 2009 16:35:26 -0000
***************
*** 2,7 ****
--- 2,10 ----
  # source: rgn-at.s
  # ld: -T rgn-at1.t
  # objdump: -w -h
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  
  .*:     file format .*
  
Index: ld/testsuite/ld-scripts/rgn-at2.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/rgn-at2.d,v
retrieving revision 1.2
diff -c -3 -p -r1.2 rgn-at2.d
*** ld/testsuite/ld-scripts/rgn-at2.d	22 Apr 2009 11:57:35 -0000	1.2
--- ld/testsuite/ld-scripts/rgn-at2.d	18 Nov 2009 16:35:26 -0000
***************
*** 2,7 ****
--- 2,10 ----
  # source: rgn-at.s
  # ld: -T rgn-at2.t
  # objdump: -w -h
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  
  .*:     file format .*
  
Index: ld/testsuite/ld-scripts/rgn-at3.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/rgn-at3.d,v
retrieving revision 1.2
diff -c -3 -p -r1.2 rgn-at3.d
*** ld/testsuite/ld-scripts/rgn-at3.d	22 Apr 2009 11:57:35 -0000	1.2
--- ld/testsuite/ld-scripts/rgn-at3.d	18 Nov 2009 16:35:26 -0000
***************
*** 2,7 ****
--- 2,10 ----
  # source: rgn-at.s
  # ld: -T rgn-at3.t
  # objdump: -w -h
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  
  .*:     file format .*
  
Index: ld/testsuite/ld-scripts/rgn-at4.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/rgn-at4.d,v
retrieving revision 1.1
diff -c -3 -p -r1.1 rgn-at4.d
*** ld/testsuite/ld-scripts/rgn-at4.d	22 May 2009 11:27:44 -0000	1.1
--- ld/testsuite/ld-scripts/rgn-at4.d	18 Nov 2009 16:35:26 -0000
***************
*** 2,7 ****
--- 2,10 ----
  # source: rgn-at.s
  # ld: -T rgn-at4.t
  # objdump: -w -h
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  
  .*:     file format .*
  
Index: ld/testsuite/ld-scripts/rgn-over8-ok.d
===================================================================
RCS file: /cvs/src/src/ld/testsuite/ld-scripts/rgn-over8-ok.d,v
retrieving revision 1.2
diff -c -3 -p -r1.2 rgn-over8-ok.d
*** ld/testsuite/ld-scripts/rgn-over8-ok.d	2 May 2008 15:11:49 -0000	1.2
--- ld/testsuite/ld-scripts/rgn-over8-ok.d	18 Nov 2009 16:35:26 -0000
***************
*** 2,7 ****
--- 2,10 ----
  # source: rgn-over8.s
  # ld: -T rgn-over8.t
  # objdump: -w -h
+ # xfail: rx-*-*
+ #   FAILS on the RX because the linker has to set LMA == VMA for the
+ #   Renesas loader.
  
  .*:     file format .*
  

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]