summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>2018-08-08 15:39:54 -0700
committerManjukumar Matha <manjukumar.harthikote-matha@xilinx.com>2019-01-01 20:03:46 -0800
commitdbefde1ee9aa7e9f2a6407131a3a4fd8b3377d37 (patch)
treec5a4d86168ea6d574fb401e385389bd96d28f2a0
parentfa996fbc301039755779d98fabbadb9dab93ef05 (diff)
downloadmeta-xilinx-dbefde1ee9aa7e9f2a6407131a3a4fd8b3377d37.tar.gz
binutils: rebase microblaze patches for binutils 2.31
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend2
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0003-Disable-the-warning-message-for-eh_frame_hdr.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch)25
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0004-Fix-relaxation-of-assembler-resolved-references.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch)99
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch)10
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0007-Add-MicroBlaze-address-extension-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0008-Add-new-MicroBlaze-bit-field-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0009-Fixing-MicroBlaze-IMM-bug.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0011-Fixing-MicroBlaze-constant-range-check-issue.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch)0
13 files changed, 71 insertions, 65 deletions
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend
index 795c6717..44709727 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend
@@ -1,4 +1,4 @@
1FILESEXTRAPATHS_append_microblaze := "${THISDIR}/binutils-2.30:" 1FILESEXTRAPATHS_append_microblaze := "${THISDIR}/binutils-2.31:"
2SRC_URI_append_microblaze = " \ 2SRC_URI_append_microblaze = " \
3 file://0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch \ 3 file://0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch \
4 file://0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch \ 4 file://0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch \
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
index 878bb321..878bb321 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
index edeecfd2..edeecfd2 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
index 2b30c467..aee0c01e 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
@@ -3,30 +3,35 @@ From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
3Date: Mon, 28 Aug 2017 19:53:54 -0700 3Date: Mon, 28 Aug 2017 19:53:54 -0700
4Subject: [PATCH] Disable the warning message for eh_frame_hdr 4Subject: [PATCH] Disable the warning message for eh_frame_hdr
5 5
6Upstream-Status: Inappropriate [workaround]
7
8Rebased to 2.31
9 - Error hanlder changed
10
11Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
6Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> 12Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
7Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 13Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
8Upstream-Status: Inappropriate [workaround]
9 14
10--- 15---
11 bfd/elf-eh-frame.c | 9 ++++++--- 16 bfd/elf-eh-frame.c | 9 ++++++---
12 1 file changed, 6 insertions(+), 3 deletions(-) 17 1 file changed, 6 insertions(+), 3 deletions(-)
13 18
14diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c 19Index: git/bfd/elf-eh-frame.c
15index 95697c4..704121d 100644 20===================================================================
16--- a/bfd/elf-eh-frame.c 21--- git.orig/bfd/elf-eh-frame.c
17+++ b/bfd/elf-eh-frame.c 22+++ git/bfd/elf-eh-frame.c
18@@ -1042,10 +1042,13 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, 23@@ -1042,10 +1042,13 @@ _bfd_elf_parse_eh_frame (bfd *abfd, stru
19 goto success; 24 goto success;
20 25
21 free_no_table: 26 free_no_table:
22- (*info->callbacks->einfo) 27- _bfd_error_handler
23+ /* FIXME: Remove the microblaze specifics when relaxing gets fixed. */ 28+ /* FIXME: Remove the microblaze specifics when relaxing gets fixed. */
24+ if (bfd_get_arch(abfd) != bfd_arch_microblaze) { 29+ if (bfd_get_arch(abfd) != bfd_arch_microblaze) {
25 /* xgettext:c-format */ 30 /* xgettext:c-format */
26- (_("%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"), 31- (_("error in %pB(%pA); no .eh_frame_hdr table will be created"),
27- abfd, sec); 32- abfd, sec);
28+ (*info->callbacks->einfo) 33+ _bfd_error_handler
29+ (_("%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"), 34+ (_("error in %pB(%pA); no .eh_frame_hdr table will be created"),
30+ abfd, sec); 35+ abfd, sec);
31+ } 36+ }
32 hdr_info->u.dwarf.table = FALSE; 37 hdr_info->u.dwarf.table = FALSE;
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0004-Fix-relaxation-of-assembler-resolved-references.patch
index b543c54e..b543c54e 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0004-Fix-relaxation-of-assembler-resolved-references.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
index 3817234b..6cdd2cc2 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
@@ -11,8 +11,9 @@ reference.
11This is a workaround for design flaws in the assembler to 11This is a workaround for design flaws in the assembler to
12linker interface with regards to linker relaxation. 12linker interface with regards to linker relaxation.
13 13
1403/2018 1408/2018
15Rebased for binutils 2.30 15Rebased for binutils 2.31
16 - Some RELOC_NUMBERs were added upstream, rebased to use 33 instead of 30
16 17
17Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> 18Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
18Signed-off-by: Nagaraju Mekala <nmekala@xilinx.com> 19Signed-off-by: Nagaraju Mekala <nmekala@xilinx.com>
@@ -31,11 +32,11 @@ Upstream-Status: Pending
31 include/elf/microblaze.h | 1 + 32 include/elf/microblaze.h | 1 +
32 7 files changed, 61 insertions(+), 10 deletions(-) 33 7 files changed, 61 insertions(+), 10 deletions(-)
33 34
34diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h 35Index: git/bfd/bfd-in2.h
35index 4228603..1906195 100644 36===================================================================
36--- a/bfd/bfd-in2.h 37--- git.orig/bfd/bfd-in2.h
37+++ b/bfd/bfd-in2.h 38+++ git/bfd/bfd-in2.h
38@@ -5826,10 +5826,15 @@ value relative to the read-write small data area anchor */ 39@@ -5791,10 +5791,15 @@ value relative to the read-write small d
39 expressions of the form "Symbol Op Symbol" */ 40 expressions of the form "Symbol Op Symbol" */
40 BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM, 41 BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM,
41 42
@@ -53,11 +54,11 @@ index 4228603..1906195 100644
53 54
54 /* This is a 64 bit reloc that stores the 32 bit pc relative 55 /* This is a 64 bit reloc that stores the 32 bit pc relative
55 value in two words (with an imm instruction). The relocation is 56 value in two words (with an imm instruction). The relocation is
56diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 57Index: git/bfd/elf32-microblaze.c
57index a1d810c..fc0d3e1 100644 58===================================================================
58--- a/bfd/elf32-microblaze.c 59--- git.orig/bfd/elf32-microblaze.c
59+++ b/bfd/elf32-microblaze.c 60+++ git/bfd/elf32-microblaze.c
60@@ -176,6 +176,20 @@ static reloc_howto_type microblaze_elf_howto_raw[] = 61@@ -176,6 +176,20 @@ static reloc_howto_type microblaze_elf_h
61 0x0000ffff, /* Dest Mask. */ 62 0x0000ffff, /* Dest Mask. */
62 FALSE), /* PC relative offset? */ 63 FALSE), /* PC relative offset? */
63 64
@@ -78,7 +79,7 @@ index a1d810c..fc0d3e1 100644
78 /* This reloc does nothing. Used for relaxation. */ 79 /* This reloc does nothing. Used for relaxation. */
79 HOWTO (R_MICROBLAZE_64_NONE, /* Type. */ 80 HOWTO (R_MICROBLAZE_64_NONE, /* Type. */
80 0, /* Rightshift. */ 81 0, /* Rightshift. */
81@@ -532,6 +546,9 @@ microblaze_elf_reloc_type_lookup (bfd * abfd ATTRIBUTE_UNUSED, 82@@ -562,6 +576,9 @@ microblaze_elf_reloc_type_lookup (bfd *
82 case BFD_RELOC_NONE: 83 case BFD_RELOC_NONE:
83 microblaze_reloc = R_MICROBLAZE_NONE; 84 microblaze_reloc = R_MICROBLAZE_NONE;
84 break; 85 break;
@@ -88,7 +89,7 @@ index a1d810c..fc0d3e1 100644
88 case BFD_RELOC_MICROBLAZE_64_NONE: 89 case BFD_RELOC_MICROBLAZE_64_NONE:
89 microblaze_reloc = R_MICROBLAZE_64_NONE; 90 microblaze_reloc = R_MICROBLAZE_64_NONE;
90 break; 91 break;
91@@ -1832,14 +1849,23 @@ microblaze_elf_relax_section (bfd *abfd, 92@@ -1918,14 +1935,23 @@ microblaze_elf_relax_section (bfd *abfd,
92 } 93 }
93 break; 94 break;
94 case R_MICROBLAZE_NONE: 95 case R_MICROBLAZE_NONE:
@@ -112,7 +113,7 @@ index a1d810c..fc0d3e1 100644
112 irel->r_addend -= (efix - sfix); 113 irel->r_addend -= (efix - sfix);
113 /* Should use HOWTO. */ 114 /* Should use HOWTO. */
114 microblaze_bfd_write_imm_value_32 (abfd, contents + irel->r_offset, 115 microblaze_bfd_write_imm_value_32 (abfd, contents + irel->r_offset,
115@@ -1887,12 +1913,16 @@ microblaze_elf_relax_section (bfd *abfd, 116@@ -1973,12 +1999,16 @@ microblaze_elf_relax_section (bfd *abfd,
116 irelscanend = irelocs + o->reloc_count; 117 irelscanend = irelocs + o->reloc_count;
117 for (irelscan = irelocs; irelscan < irelscanend; irelscan++) 118 for (irelscan = irelocs; irelscan < irelscanend; irelscan++)
118 { 119 {
@@ -130,7 +131,7 @@ index a1d810c..fc0d3e1 100644
130 /* This was a PC-relative instruction that was completely resolved. */ 131 /* This was a PC-relative instruction that was completely resolved. */
131 if (ocontents == NULL) 132 if (ocontents == NULL)
132 { 133 {
133@@ -1917,15 +1947,16 @@ microblaze_elf_relax_section (bfd *abfd, 134@@ -2003,15 +2033,16 @@ microblaze_elf_relax_section (bfd *abfd,
134 } 135 }
135 } 136 }
136 137
@@ -152,7 +153,7 @@ index a1d810c..fc0d3e1 100644
152 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32) 153 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32)
153 { 154 {
154 isym = isymbuf + ELF32_R_SYM (irelscan->r_info); 155 isym = isymbuf + ELF32_R_SYM (irelscan->r_info);
155@@ -1985,7 +2016,7 @@ microblaze_elf_relax_section (bfd *abfd, 156@@ -2071,7 +2102,7 @@ microblaze_elf_relax_section (bfd *abfd,
156 elf_section_data (o)->this_hdr.contents = ocontents; 157 elf_section_data (o)->this_hdr.contents = ocontents;
157 } 158 }
158 } 159 }
@@ -161,11 +162,11 @@ index a1d810c..fc0d3e1 100644
161 + isym->st_value, 162 + isym->st_value,
162 0, 163 0,
163 sec); 164 sec);
164diff --git a/bfd/libbfd.h b/bfd/libbfd.h 165Index: git/bfd/libbfd.h
165index 2f5f16e..854bb0c 100644 166===================================================================
166--- a/bfd/libbfd.h 167--- git.orig/bfd/libbfd.h
167+++ b/bfd/libbfd.h 168+++ git/bfd/libbfd.h
168@@ -2853,6 +2853,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", 169@@ -2862,6 +2862,7 @@ static const char *const bfd_reloc_code_
169 "BFD_RELOC_MICROBLAZE_32_ROSDA", 170 "BFD_RELOC_MICROBLAZE_32_ROSDA",
170 "BFD_RELOC_MICROBLAZE_32_RWSDA", 171 "BFD_RELOC_MICROBLAZE_32_RWSDA",
171 "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM", 172 "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM",
@@ -173,11 +174,11 @@ index 2f5f16e..854bb0c 100644
173 "BFD_RELOC_MICROBLAZE_64_NONE", 174 "BFD_RELOC_MICROBLAZE_64_NONE",
174 "BFD_RELOC_MICROBLAZE_64_GOTPC", 175 "BFD_RELOC_MICROBLAZE_64_GOTPC",
175 "BFD_RELOC_MICROBLAZE_64_GOT", 176 "BFD_RELOC_MICROBLAZE_64_GOT",
176diff --git a/bfd/reloc.c b/bfd/reloc.c 177Index: git/bfd/reloc.c
177index a1353a2..4b57de7 100644 178===================================================================
178--- a/bfd/reloc.c 179--- git.orig/bfd/reloc.c
179+++ b/bfd/reloc.c 180+++ git/bfd/reloc.c
180@@ -6903,6 +6903,12 @@ ENUMDOC 181@@ -6865,6 +6865,12 @@ ENUMDOC
181 This is a 32 bit reloc for the microblaze to handle 182 This is a 32 bit reloc for the microblaze to handle
182 expressions of the form "Symbol Op Symbol" 183 expressions of the form "Symbol Op Symbol"
183 ENUM 184 ENUM
@@ -190,26 +191,26 @@ index a1353a2..4b57de7 100644
190 BFD_RELOC_MICROBLAZE_64_NONE 191 BFD_RELOC_MICROBLAZE_64_NONE
191 ENUMDOC 192 ENUMDOC
192 This is a 64 bit reloc that stores the 32 bit pc relative 193 This is a 64 bit reloc that stores the 32 bit pc relative
193diff --git a/binutils/readelf.c b/binutils/readelf.c 194Index: git/binutils/readelf.c
194index fed0387..92f655d 100644 195===================================================================
195--- a/binutils/readelf.c 196--- git.orig/binutils/readelf.c
196+++ b/binutils/readelf.c 197+++ git/binutils/readelf.c
197@@ -12774,6 +12774,10 @@ is_none_reloc (Filedata * filedata, unsigned int reloc_type) 198@@ -12908,6 +12908,10 @@ is_none_reloc (Filedata * filedata, unsi
198 || reloc_type == 32 /* R_AVR_DIFF32. */); 199 || reloc_type == 32 /* R_AVR_DIFF32. */);
199 case EM_METAG: 200 case EM_METAG:
200 return reloc_type == 3; /* R_METAG_NONE. */ 201 return reloc_type == 3; /* R_METAG_NONE. */
201+ case EM_MICROBLAZE: 202+ case EM_MICROBLAZE:
202+ return reloc_type == 30 /* R_MICROBLAZE_32_NONE. */ 203+ return reloc_type == 33 /* R_MICROBLAZE_32_NONE. */
203+ || reloc_type == 0 /* R_MICROBLAZE_NONE. */ 204+ || reloc_type == 0 /* R_MICROBLAZE_NONE. */
204+ || reloc_type == 9; /* R_MICROBLAZE_64_NONE. */ 205+ || reloc_type == 9; /* R_MICROBLAZE_64_NONE. */
205 case EM_NDS32: 206 case EM_NDS32:
206 return (reloc_type == 0 /* R_XTENSA_NONE. */ 207 return (reloc_type == 0 /* R_XTENSA_NONE. */
207 || reloc_type == 204 /* R_NDS32_DIFF8. */ 208 || reloc_type == 204 /* R_NDS32_DIFF8. */
208diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c 209Index: git/gas/config/tc-microblaze.c
209index 50dbfc7..d66e949 100644 210===================================================================
210--- a/gas/config/tc-microblaze.c 211--- git.orig/gas/config/tc-microblaze.c
211+++ b/gas/config/tc-microblaze.c 212+++ git/gas/config/tc-microblaze.c
212@@ -2179,7 +2179,9 @@ md_apply_fix (fixS * fixP, 213@@ -2201,7 +2201,9 @@ md_apply_fix (fixS * fixP,
213 /* This fixup has been resolved. Create a reloc in case the linker 214 /* This fixup has been resolved. Create a reloc in case the linker
214 moves code around due to relaxing. */ 215 moves code around due to relaxing. */
215 if (fixP->fx_r_type == BFD_RELOC_64_PCREL) 216 if (fixP->fx_r_type == BFD_RELOC_64_PCREL)
@@ -220,7 +221,7 @@ index 50dbfc7..d66e949 100644
220 else 221 else
221 fixP->fx_r_type = BFD_RELOC_NONE; 222 fixP->fx_r_type = BFD_RELOC_NONE;
222 fixP->fx_addsy = section_symbol (absolute_section); 223 fixP->fx_addsy = section_symbol (absolute_section);
223@@ -2401,6 +2403,7 @@ tc_gen_reloc (asection * section ATTRIBUTE_UNUSED, fixS * fixp) 224@@ -2426,6 +2428,7 @@ tc_gen_reloc (asection * section ATTRIBU
224 switch (fixp->fx_r_type) 225 switch (fixp->fx_r_type)
225 { 226 {
226 case BFD_RELOC_NONE: 227 case BFD_RELOC_NONE:
@@ -228,15 +229,15 @@ index 50dbfc7..d66e949 100644
228 case BFD_RELOC_MICROBLAZE_64_NONE: 229 case BFD_RELOC_MICROBLAZE_64_NONE:
229 case BFD_RELOC_32: 230 case BFD_RELOC_32:
230 case BFD_RELOC_MICROBLAZE_32_LO: 231 case BFD_RELOC_MICROBLAZE_32_LO:
231diff --git a/include/elf/microblaze.h b/include/elf/microblaze.h 232Index: git/include/elf/microblaze.h
232index ae98099..c8cc57b 100644 233===================================================================
233--- a/include/elf/microblaze.h 234--- git.orig/include/elf/microblaze.h
234+++ b/include/elf/microblaze.h 235+++ git/include/elf/microblaze.h
235@@ -58,6 +58,7 @@ START_RELOC_NUMBERS (elf_microblaze_reloc_type) 236@@ -61,6 +61,7 @@ START_RELOC_NUMBERS (elf_microblaze_relo
236 RELOC_NUMBER (R_MICROBLAZE_TLSDTPREL64, 27) /* TLS Offset Within TLS Block */ 237 RELOC_NUMBER (R_MICROBLAZE_TEXTPCREL_64, 30) /* PC-relative TEXT offset. */
237 RELOC_NUMBER (R_MICROBLAZE_TLSGOTTPREL32, 28) /* TLS Offset From Thread Pointer */ 238 RELOC_NUMBER (R_MICROBLAZE_TEXTREL_64, 31) /* TEXT Entry offset 64-bit. */
238 RELOC_NUMBER (R_MICROBLAZE_TLSTPREL32, 29) /* TLS Offset From Thread Pointer */ 239 RELOC_NUMBER (R_MICROBLAZE_TEXTREL_32_LO, 32) /* TEXT Entry offset 32-bit. */
239+ RELOC_NUMBER (R_MICROBLAZE_32_NONE, 30) 240+ RELOC_NUMBER (R_MICROBLAZE_32_NONE, 33)
240
241 END_RELOC_NUMBERS (R_MICROBLAZE_max) 241 END_RELOC_NUMBERS (R_MICROBLAZE_max)
242 242
243 /* Global base address names. */
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
index a671cf84..8d3d5387 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
@@ -1,4 +1,4 @@
1From 0cad227ce495a975b32c10a8b6b0970c45024dd6 Mon Sep 17 00:00:00 2001 1From ca0336a49c33ccb78962530f2affff8982027e8e Mon Sep 17 00:00:00 2001
2From: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 2From: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
3Date: Mon, 28 Aug 2017 19:53:58 -0700 3Date: Mon, 28 Aug 2017 19:53:58 -0700
4Subject: [PATCH] Fix bug in MicroBlaze TLSTPREL Relocation 4Subject: [PATCH] Fix bug in MicroBlaze TLSTPREL Relocation
@@ -18,10 +18,10 @@ Upstream-Status: Pending
18 1 file changed, 2 insertions(+), 2 deletions(-) 18 1 file changed, 2 insertions(+), 2 deletions(-)
19 19
20diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 20diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
21index fc0d3e1..a94799f 100644 21index 1dc56f7..d4e53de 100644
22--- a/bfd/elf32-microblaze.c 22--- a/bfd/elf32-microblaze.c
23+++ b/bfd/elf32-microblaze.c 23+++ b/bfd/elf32-microblaze.c
24@@ -1402,9 +1402,9 @@ microblaze_elf_relocate_section (bfd *output_bfd, 24@@ -1451,9 +1451,9 @@ microblaze_elf_relocate_section (bfd *output_bfd,
25 relocation += addend; 25 relocation += addend;
26 relocation -= dtprel_base(info); 26 relocation -= dtprel_base(info);
27 bfd_put_16 (input_bfd, (relocation >> 16) & 0xffff, 27 bfd_put_16 (input_bfd, (relocation >> 16) & 0xffff,
@@ -31,5 +31,5 @@ index fc0d3e1..a94799f 100644
31- contents + offset + 2 + INST_WORD_SIZE); 31- contents + offset + 2 + INST_WORD_SIZE);
32+ contents + offset + endian + INST_WORD_SIZE); 32+ contents + offset + endian + INST_WORD_SIZE);
33 break; 33 break;
34 case (int) R_MICROBLAZE_64_PCREL : 34 case (int) R_MICROBLAZE_TEXTREL_64:
35 case (int) R_MICROBLAZE_64: 35 case (int) R_MICROBLAZE_TEXTREL_32_LO:
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0007-Add-MicroBlaze-address-extension-instructions.patch
index 9672c516..9672c516 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0007-Add-MicroBlaze-address-extension-instructions.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0008-Add-new-MicroBlaze-bit-field-instructions.patch
index 0bc01177..0bc01177 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0008-Add-new-MicroBlaze-bit-field-instructions.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0009-Fixing-MicroBlaze-IMM-bug.patch
index bb7e91cc..bb7e91cc 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0009-Fixing-MicroBlaze-IMM-bug.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
index 077343e6..077343e6 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
index 244a7ade..244a7ade 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch
index e340c506..e340c506 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.31/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch