[binutils-gdb] Fix SPARC relocations generated for the .eh_frame section.

Nick Clifton nickc@sourceware.org
Tue Nov 15 15:42:00 GMT 2016


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=93ca393659ef6714724749950301757f47e5e9fd

commit 93ca393659ef6714724749950301757f47e5e9fd
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Nov 15 15:41:27 2016 +0000

    Fix SPARC relocations generated for the .eh_frame section.
    
    	PR gas/20803
    	* config/tc-sparc.c (cons_fix_new_sparc): Use unaligned relocs in
    	the .eh_frame section.

Diff:
---
 gas/ChangeLog         | 6 ++++++
 gas/config/tc-sparc.c | 5 ++++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index f5836ac..613833b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2016-11-15  Nick Clifton  <nickc@redhat.com>
+
+	PR gas/20803
+	* config/tc-sparc.c (cons_fix_new_sparc): Use unaligned relocs in
+	the .eh_frame section.
+
 2016-11-13  Anthony Green  <green@moxielogic.org>
 
 	* config/tc-moxie.c (md_assemble): Assemble 'bad' opcode.
diff --git a/gas/config/tc-sparc.c b/gas/config/tc-sparc.c
index 70f5bfb..d7b9a98 100644
--- a/gas/config/tc-sparc.c
+++ b/gas/config/tc-sparc.c
@@ -4957,7 +4957,10 @@ cons_fix_new_sparc (fragS *frag,
 	  case 8: r = BFD_RELOC_SPARC_TLS_DTPOFF64; break;
 	  }
     }
-  else if (sparc_no_align_cons)
+  else if (sparc_no_align_cons
+	   || /* PR 20803 - relocs in the .eh_frame section
+		 need to support unaligned access.  */
+	   strcmp (now_seg->name, ".eh_frame") == 0)
     {
       switch (nbytes)
 	{



More information about the Binutils-cvs mailing list