summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend2
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch)10
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch)8
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0003-Disable-the-warning-message-for-eh_frame_hdr.patch)10
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0004-Fix-relaxation-of-assembler-resolved-references.patch)61
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch)102
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch)10
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0007-Add-MicroBlaze-address-extension-instructions.patch)10
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0008-Add-new-MicroBlaze-bit-field-instructions.patch)0
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0009-Fixing-MicroBlaze-IMM-bug.patch)12
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch)8
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0011-Fixing-MicroBlaze-constant-range-check-issue.patch)8
-rw-r--r--meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch (renamed from meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch)8
13 files changed, 120 insertions, 129 deletions
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils%.bbappend
index 17843185..795c6717 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.29:" 1FILESEXTRAPATHS_append_microblaze := "${THISDIR}/binutils-2.30:"
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.29/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
index 193061a3..878bb321 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0001-MicroBlaze-Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
@@ -1,4 +1,4 @@
1From d2979c539c309347493cebae91dc455fa3368f4f Mon Sep 17 00:00:00 2001 1From 91f39b692c48336117c092e4afd80899c97779e6 Mon Sep 17 00:00:00 2001
2From: David Holsgrove <david.holsgrove@xilinx.com> 2From: David Holsgrove <david.holsgrove@xilinx.com>
3Date: Mon, 28 Aug 2017 19:53:52 -0700 3Date: Mon, 28 Aug 2017 19:53:52 -0700
4Subject: [PATCH] MicroBlaze Add wdc.ext.clear and wdc.ext.flush insns 4Subject: [PATCH] MicroBlaze Add wdc.ext.clear and wdc.ext.flush insns
@@ -11,13 +11,14 @@ Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
11Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 11Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
12Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 12Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
13Upstream-Status: Pending 13Upstream-Status: Pending
14
14--- 15---
15 opcodes/microblaze-opc.h | 5 ++++- 16 opcodes/microblaze-opc.h | 5 ++++-
16 opcodes/microblaze-opcm.h | 4 ++-- 17 opcodes/microblaze-opcm.h | 4 ++--
17 2 files changed, 6 insertions(+), 3 deletions(-) 18 2 files changed, 6 insertions(+), 3 deletions(-)
18 19
19diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h 20diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h
20index 3954f927d1..b33178145f 100644 21index ede8af8..773dc81 100644
21--- a/opcodes/microblaze-opc.h 22--- a/opcodes/microblaze-opc.h
22+++ b/opcodes/microblaze-opc.h 23+++ b/opcodes/microblaze-opc.h
23@@ -91,6 +91,7 @@ 24@@ -91,6 +91,7 @@
@@ -48,7 +49,7 @@ index 3954f927d1..b33178145f 100644
48 {"mfs", INST_TYPE_RD_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MFS, 0x94008000, OPCODE_MASK_H23S, mfs, special_inst }, 49 {"mfs", INST_TYPE_RD_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MFS, 0x94008000, OPCODE_MASK_H23S, mfs, special_inst },
49 {"br", INST_TYPE_R2, INST_PC_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x98000000, OPCODE_MASK_H124, br, branch_inst }, 50 {"br", INST_TYPE_R2, INST_PC_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x98000000, OPCODE_MASK_H124, br, branch_inst },
50diff --git a/opcodes/microblaze-opcm.h b/opcodes/microblaze-opcm.h 51diff --git a/opcodes/microblaze-opcm.h b/opcodes/microblaze-opcm.h
51index 6b25173442..00dc131302 100644 52index 92f3f19..7338f6a 100644
52--- a/opcodes/microblaze-opcm.h 53--- a/opcodes/microblaze-opcm.h
53+++ b/opcodes/microblaze-opcm.h 54+++ b/opcodes/microblaze-opcm.h
54@@ -33,8 +33,8 @@ enum microblaze_instr 55@@ -33,8 +33,8 @@ enum microblaze_instr
@@ -62,6 +63,3 @@ index 6b25173442..00dc131302 100644
62 bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni, 63 bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni,
63 imm, rtsd, rtid, rtbd, rted, bri, brid, brlid, brai, braid, bralid, 64 imm, rtsd, rtid, rtbd, rted, bri, brid, brlid, brai, braid, bralid,
64 brki, beqi, beqid, bnei, bneid, blti, bltid, blei, bleid, bgti, 65 brki, beqi, beqid, bnei, bneid, blti, bltid, blei, bleid, bgti,
65--
662.15.0
67
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
index c8142ca4..edeecfd2 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0002-MicroBlaze-add-mlittle-endian-and-mbig-endian-flags.patch
@@ -1,4 +1,4 @@
1From 90fa3cca5ce8ca19c9aca521bbc3d47485f02bf1 Mon Sep 17 00:00:00 2001 1From 8b733a61ab54ba4cedb234020562502d20eebcbb 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:53 -0700 3Date: Mon, 28 Aug 2017 19:53:53 -0700
4Subject: [PATCH] MicroBlaze add mlittle-endian and mbig-endian flags 4Subject: [PATCH] MicroBlaze add mlittle-endian and mbig-endian flags
@@ -13,12 +13,13 @@ Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
13Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com> 13Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
14Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 14Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
15Upstream-Status: Pending 15Upstream-Status: Pending
16
16--- 17---
17 gas/config/tc-microblaze.c | 9 +++++++++ 18 gas/config/tc-microblaze.c | 9 +++++++++
18 1 file changed, 9 insertions(+) 19 1 file changed, 9 insertions(+)
19 20
20diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c 21diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c
21index 0124422168..d47793646b 100644 22index 0194cd9..42dd7ae 100644
22--- a/gas/config/tc-microblaze.c 23--- a/gas/config/tc-microblaze.c
23+++ b/gas/config/tc-microblaze.c 24+++ b/gas/config/tc-microblaze.c
24@@ -37,6 +37,8 @@ 25@@ -37,6 +37,8 @@
@@ -61,6 +62,3 @@ index 0124422168..d47793646b 100644
61 } 62 }
62 63
63 64
64--
652.15.0
66
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0003-Disable-the-warning-message-for-eh_frame_hdr.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
index 55f4ce33..2b30c467 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0003-Disable-the-warning-message-for-eh_frame_hdr.patch
@@ -1,4 +1,4 @@
1From f81026057270346cfcfa16e460dcb04a9fa48511 Mon Sep 17 00:00:00 2001 1From dac72d809be9faf9380b181df0c19a2c6d744c54 Mon Sep 17 00:00:00 2001
2From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com> 2From: "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
@@ -6,15 +6,16 @@ Subject: [PATCH] Disable the warning message for eh_frame_hdr
6Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> 6Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
7Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 7Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
8Upstream-Status: Inappropriate [workaround] 8Upstream-Status: Inappropriate [workaround]
9
9--- 10---
10 bfd/elf-eh-frame.c | 9 ++++++--- 11 bfd/elf-eh-frame.c | 9 ++++++---
11 1 file changed, 6 insertions(+), 3 deletions(-) 12 1 file changed, 6 insertions(+), 3 deletions(-)
12 13
13diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c 14diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c
14index 52ba9c6213..7ac511dfcb 100644 15index 95697c4..704121d 100644
15--- a/bfd/elf-eh-frame.c 16--- a/bfd/elf-eh-frame.c
16+++ b/bfd/elf-eh-frame.c 17+++ b/bfd/elf-eh-frame.c
17@@ -1046,10 +1046,13 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, 18@@ -1042,10 +1042,13 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info,
18 goto success; 19 goto success;
19 20
20 free_no_table: 21 free_no_table:
@@ -31,6 +32,3 @@ index 52ba9c6213..7ac511dfcb 100644
31 hdr_info->u.dwarf.table = FALSE; 32 hdr_info->u.dwarf.table = FALSE;
32 if (sec_info) 33 if (sec_info)
33 free (sec_info); 34 free (sec_info);
34--
352.15.0
36
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0004-Fix-relaxation-of-assembler-resolved-references.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch
index c145a746..b543c54e 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0004-Fix-relaxation-of-assembler-resolved-references.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0004-Fix-relaxation-of-assembler-resolved-references.patch
@@ -1,24 +1,30 @@
1From 0d5966951c379882b7557befaa229dc5def8dafe Mon Sep 17 00:00:00 2001 1From 927ef228dfedf229dc915b273a308ab2c7bf9e19 Mon Sep 17 00:00:00 2001
2From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com> 2From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
3Date: Mon, 28 Aug 2017 19:53:55 -0700 3Date: Mon, 28 Aug 2017 19:53:55 -0700
4Subject: [PATCH] Fix relaxation of assembler resolved references 4Subject: [PATCH] Fix relaxation of assembler resolved references
5 5
603/2018
7Rebased for binutils 2.30
8
6Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> 9Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
7Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 10Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
11Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
12
8Upstream-Status: Pending 13Upstream-Status: Pending
14
9--- 15---
10 bfd/elf32-microblaze.c | 39 +++++++++++++++++++++++++++++++++++++++ 16 bfd/elf32-microblaze.c | 39 +++++++++++++++++++++++++++++++++++++++
11 gas/config/tc-microblaze.c | 1 + 17 gas/config/tc-microblaze.c | 1 +
12 2 files changed, 40 insertions(+) 18 2 files changed, 40 insertions(+)
13 19
14diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 20diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
15index 265773675c..c3dbead48d 100644 21index f1808bc..a1d810c 100644
16--- a/bfd/elf32-microblaze.c 22--- a/bfd/elf32-microblaze.c
17+++ b/bfd/elf32-microblaze.c 23+++ b/bfd/elf32-microblaze.c
18@@ -1901,6 +1901,45 @@ microblaze_elf_relax_section (bfd *abfd, 24@@ -1887,6 +1887,45 @@ microblaze_elf_relax_section (bfd *abfd,
19 irelscanend = irelocs + o->reloc_count; 25 irelscanend = irelocs + o->reloc_count;
20 for (irelscan = irelocs; irelscan < irelscanend; irelscan++) 26 for (irelscan = irelocs; irelscan < irelscanend; irelscan++)
21 { 27 {
22+ if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_NONE) 28+ if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_NONE)
23+ { 29+ {
24+ unsigned int val; 30+ unsigned int val;
@@ -28,26 +34,26 @@ index 265773675c..c3dbead48d 100644
28+ /* This was a PC-relative instruction that was completely resolved. */ 34+ /* This was a PC-relative instruction that was completely resolved. */
29+ if (ocontents == NULL) 35+ if (ocontents == NULL)
30+ { 36+ {
31+ if (elf_section_data (o)->this_hdr.contents != NULL) 37+ if (elf_section_data (o)->this_hdr.contents != NULL)
32+ ocontents = elf_section_data (o)->this_hdr.contents; 38+ ocontents = elf_section_data (o)->this_hdr.contents;
33+ else 39+ else
34+ { 40+ {
35+ /* We always cache the section contents. 41+ /* We always cache the section contents.
36+ Perhaps, if info->keep_memory is FALSE, we 42+ Perhaps, if info->keep_memory is FALSE, we
37+ should free them, if we are permitted to. */ 43+ should free them, if we are permitted to. */
38+ 44+
39+ if (o->rawsize == 0) 45+ if (o->rawsize == 0)
40+ o->rawsize = o->size; 46+ o->rawsize = o->size;
41+ ocontents = (bfd_byte *) bfd_malloc (o->rawsize); 47+ ocontents = (bfd_byte *) bfd_malloc (o->rawsize);
42+ if (ocontents == NULL) 48+ if (ocontents == NULL)
43+ goto error_return; 49+ goto error_return;
44+ if (!bfd_get_section_contents (abfd, o, ocontents, 50+ if (!bfd_get_section_contents (abfd, o, ocontents,
45+ (file_ptr) 0, 51+ (file_ptr) 0,
46+ o->rawsize)) 52+ o->rawsize))
47+ goto error_return; 53+ goto error_return;
48+ elf_section_data (o)->this_hdr.contents = ocontents; 54+ elf_section_data (o)->this_hdr.contents = ocontents;
49+ } 55+ }
50+ } 56+ }
51+ 57+
52+ irelscan->r_addend -= calc_fixup (irelscan->r_addend 58+ irelscan->r_addend -= calc_fixup (irelscan->r_addend
53+ + isym->st_value, sec); 59+ + isym->st_value, sec);
@@ -58,11 +64,11 @@ index 265773675c..c3dbead48d 100644
58+ if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_64_NONE) { 64+ if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_64_NONE) {
59+ fprintf(stderr, "Unhandled NONE 64\n"); 65+ fprintf(stderr, "Unhandled NONE 64\n");
60+ } 66+ }
61 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32) 67 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32)
62 { 68 {
63 isym = isymbuf + ELF32_R_SYM (irelscan->r_info); 69 isym = isymbuf + ELF32_R_SYM (irelscan->r_info);
64diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c 70diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c
65index d47793646b..1cfd441c19 100644 71index 42dd7ae..50dbfc7 100644
66--- a/gas/config/tc-microblaze.c 72--- a/gas/config/tc-microblaze.c
67+++ b/gas/config/tc-microblaze.c 73+++ b/gas/config/tc-microblaze.c
68@@ -2183,6 +2183,7 @@ md_apply_fix (fixS * fixP, 74@@ -2183,6 +2183,7 @@ md_apply_fix (fixS * fixP,
@@ -73,6 +79,3 @@ index d47793646b..1cfd441c19 100644
73 } 79 }
74 return; 80 return;
75 } 81 }
76--
772.15.0
78
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
index 9eeb0b28..3817234b 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0005-Fixup-MicroBlaze-debug_loc-sections-after-linker-rel.patch
@@ -1,4 +1,4 @@
1From ef876d5062148e8555353e5e72da87c3a47dea8f Mon Sep 17 00:00:00 2001 1From 5bf68bc39976903929f730b6eed18686c3563c05 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:56 -0700 3Date: Mon, 28 Aug 2017 19:53:56 -0700
4Subject: [PATCH] Fixup MicroBlaze debug_loc sections after linker relaxation 4Subject: [PATCH] Fixup MicroBlaze debug_loc sections after linker relaxation
@@ -11,25 +11,31 @@ 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
15Rebased for binutils 2.30
16
14Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> 17Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
15Signed-off-by: Nagaraju Mekala <nmekala@xilinx.com> 18Signed-off-by: Nagaraju Mekala <nmekala@xilinx.com>
16Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 19Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
20Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
21
17Upstream-Status: Pending 22Upstream-Status: Pending
23
18--- 24---
19 bfd/bfd-in2.h | 9 +++++++-- 25 bfd/bfd-in2.h | 9 +++++++--
20 bfd/elf32-microblaze.c | 42 +++++++++++++++++++++++++++++++++++------- 26 bfd/elf32-microblaze.c | 45 ++++++++++++++++++++++++++++++++++++++-------
21 bfd/libbfd.h | 1 + 27 bfd/libbfd.h | 1 +
22 bfd/reloc.c | 6 ++++++ 28 bfd/reloc.c | 6 ++++++
23 binutils/readelf.c | 4 ++++ 29 binutils/readelf.c | 4 ++++
24 gas/config/tc-microblaze.c | 5 ++++- 30 gas/config/tc-microblaze.c | 5 ++++-
25 include/elf/microblaze.h | 1 + 31 include/elf/microblaze.h | 1 +
26 7 files changed, 58 insertions(+), 10 deletions(-) 32 7 files changed, 61 insertions(+), 10 deletions(-)
27 33
28diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h 34diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
29index 1343780c8c..3456826f83 100644 35index 4228603..1906195 100644
30--- a/bfd/bfd-in2.h 36--- a/bfd/bfd-in2.h
31+++ b/bfd/bfd-in2.h 37+++ b/bfd/bfd-in2.h
32@@ -5809,10 +5809,15 @@ value relative to the read-write small data area anchor */ 38@@ -5826,10 +5826,15 @@ value relative to the read-write small data area anchor */
33 expressions of the form "Symbol Op Symbol" */ 39 expressions of the form "Symbol Op Symbol" */
34 BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM, 40 BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM,
35 41
@@ -48,12 +54,12 @@ index 1343780c8c..3456826f83 100644
48 /* This is a 64 bit reloc that stores the 32 bit pc relative 54 /* This is a 64 bit reloc that stores the 32 bit pc relative
49 value in two words (with an imm instruction). The relocation is 55 value in two words (with an imm instruction). The relocation is
50diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 56diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
51index c3dbead48d..1d1f7e210a 100644 57index a1d810c..fc0d3e1 100644
52--- a/bfd/elf32-microblaze.c 58--- a/bfd/elf32-microblaze.c
53+++ b/bfd/elf32-microblaze.c 59+++ b/bfd/elf32-microblaze.c
54@@ -176,6 +176,20 @@ static reloc_howto_type microblaze_elf_howto_raw[] = 60@@ -176,6 +176,20 @@ static reloc_howto_type microblaze_elf_howto_raw[] =
55 0x0000ffff, /* Dest Mask. */ 61 0x0000ffff, /* Dest Mask. */
56 FALSE), /* PC relative offset? */ 62 FALSE), /* PC relative offset? */
57 63
58+ HOWTO (R_MICROBLAZE_32_NONE, /* Type. */ 64+ HOWTO (R_MICROBLAZE_32_NONE, /* Type. */
59+ 0, /* Rightshift. */ 65+ 0, /* Rightshift. */
@@ -69,9 +75,9 @@ index c3dbead48d..1d1f7e210a 100644
69+ 0, /* Dest Mask. */ 75+ 0, /* Dest Mask. */
70+ FALSE), /* PC relative offset? */ 76+ FALSE), /* PC relative offset? */
71+ 77+
72 /* This reloc does nothing. Used for relaxation. */ 78 /* This reloc does nothing. Used for relaxation. */
73 HOWTO (R_MICROBLAZE_64_NONE, /* Type. */ 79 HOWTO (R_MICROBLAZE_64_NONE, /* Type. */
74 0, /* Rightshift. */ 80 0, /* Rightshift. */
75@@ -532,6 +546,9 @@ microblaze_elf_reloc_type_lookup (bfd * abfd ATTRIBUTE_UNUSED, 81@@ -532,6 +546,9 @@ microblaze_elf_reloc_type_lookup (bfd * abfd ATTRIBUTE_UNUSED,
76 case BFD_RELOC_NONE: 82 case BFD_RELOC_NONE:
77 microblaze_reloc = R_MICROBLAZE_NONE; 83 microblaze_reloc = R_MICROBLAZE_NONE;
@@ -82,33 +88,34 @@ index c3dbead48d..1d1f7e210a 100644
82 case BFD_RELOC_MICROBLAZE_64_NONE: 88 case BFD_RELOC_MICROBLAZE_64_NONE:
83 microblaze_reloc = R_MICROBLAZE_64_NONE; 89 microblaze_reloc = R_MICROBLAZE_64_NONE;
84 break; 90 break;
85@@ -1846,14 +1863,22 @@ microblaze_elf_relax_section (bfd *abfd, 91@@ -1832,14 +1849,23 @@ microblaze_elf_relax_section (bfd *abfd,
86 } 92 }
87 break; 93 break;
88 case R_MICROBLAZE_NONE: 94 case R_MICROBLAZE_NONE:
89+ case R_MICROBLAZE_32_NONE: 95+ case R_MICROBLAZE_32_NONE:
90 { 96 {
91 /* This was a PC-relative instruction that was 97 /* This was a PC-relative instruction that was
92 completely resolved. */ 98 completely resolved. */
93 int sfix, efix; 99 int sfix, efix;
94+ unsigned int val; 100+ unsigned int val;
95 bfd_vma target_address; 101 bfd_vma target_address;
96 target_address = irel->r_addend + irel->r_offset; 102 target_address = irel->r_addend + irel->r_offset;
97 sfix = calc_fixup (irel->r_offset, 0, sec); 103 sfix = calc_fixup (irel->r_offset, 0, sec);
98 efix = calc_fixup (target_address, 0, sec); 104 efix = calc_fixup (target_address, 0, sec);
99+ 105+
100+ /* Validate the in-band val. */ 106+ /* Validate the in-band val. */
101+ val = bfd_get_32 (abfd, contents + irel->r_offset); 107+ val = bfd_get_32 (abfd, contents + irel->r_offset);
102+ if (val != irel->r_addend && ELF32_R_TYPE (irel->r_info) == R_MICROBLAZE_32_NONE) { 108+ if (val != irel->r_addend && ELF32_R_TYPE (irel->r_info) == R_MICROBLAZE_32_NONE) {
103+ fprintf(stderr, "%d: CORRUPT relax reloc %x %lx\n", __LINE__, val, irel->r_addend); 109+ fprintf(stderr, "%d: CORRUPT relax reloc %x %lx\n", __LINE__, val, irel->r_addend);
104+ } 110+ }
105 irel->r_addend -= (efix - sfix); 111+
106 /* Should use HOWTO. */ 112 irel->r_addend -= (efix - sfix);
107 microblaze_bfd_write_imm_value_32 (abfd, contents + irel->r_offset, 113 /* Should use HOWTO. */
108@@ -1901,12 +1926,16 @@ microblaze_elf_relax_section (bfd *abfd, 114 microblaze_bfd_write_imm_value_32 (abfd, contents + irel->r_offset,
109 irelscanend = irelocs + o->reloc_count; 115@@ -1887,12 +1913,16 @@ microblaze_elf_relax_section (bfd *abfd,
110 for (irelscan = irelocs; irelscan < irelscanend; irelscan++) 116 irelscanend = irelocs + o->reloc_count;
111 { 117 for (irelscan = irelocs; irelscan < irelscanend; irelscan++)
118 {
112- if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_NONE) 119- if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_NONE)
113+ if (1 && ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32_NONE) 120+ if (1 && ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32_NONE)
114 { 121 {
@@ -123,27 +130,29 @@ index c3dbead48d..1d1f7e210a 100644
123 /* This was a PC-relative instruction that was completely resolved. */ 130 /* This was a PC-relative instruction that was completely resolved. */
124 if (ocontents == NULL) 131 if (ocontents == NULL)
125 { 132 {
126@@ -1931,15 +1960,14 @@ microblaze_elf_relax_section (bfd *abfd, 133@@ -1917,15 +1947,16 @@ microblaze_elf_relax_section (bfd *abfd,
127 } 134 }
128 } 135 }
129 136
130- irelscan->r_addend -= calc_fixup (irelscan->r_addend 137- irelscan->r_addend -= calc_fixup (irelscan->r_addend
131- + isym->st_value, sec); 138- + isym->st_value, sec);
132 val = bfd_get_32 (abfd, ocontents + irelscan->r_offset); 139 val = bfd_get_32 (abfd, ocontents + irelscan->r_offset);
140+
133+ if (val != irelscan->r_addend) { 141+ if (val != irelscan->r_addend) {
134+ fprintf(stderr, "%d: CORRUPT relax reloc! %x %lx\n", __LINE__, val, irelscan->r_addend); 142+ fprintf(stderr, "%d: CORRUPT relax reloc! %x %lx\n", __LINE__, val, irelscan->r_addend);
135+ } 143+ }
136+ irelscan->r_addend -= calc_fixup (irelscan->r_addend, 0, sec); 144+ irelscan->r_addend -= calc_fixup (irelscan->r_addend, 0, sec);
145+
137 microblaze_bfd_write_imm_value_32 (abfd, ocontents + irelscan->r_offset, 146 microblaze_bfd_write_imm_value_32 (abfd, ocontents + irelscan->r_offset,
138 irelscan->r_addend); 147 irelscan->r_addend);
139 } 148 }
140- if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_64_NONE) { 149- if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_64_NONE) {
141- fprintf(stderr, "Unhandled NONE 64\n"); 150- fprintf(stderr, "Unhandled NONE 64\n");
142- } 151- }
143 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32) 152 if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32)
144 { 153 {
145 isym = isymbuf + ELF32_R_SYM (irelscan->r_info); 154 isym = isymbuf + ELF32_R_SYM (irelscan->r_info);
146@@ -1999,7 +2027,7 @@ microblaze_elf_relax_section (bfd *abfd, 155@@ -1985,7 +2016,7 @@ microblaze_elf_relax_section (bfd *abfd,
147 elf_section_data (o)->this_hdr.contents = ocontents; 156 elf_section_data (o)->this_hdr.contents = ocontents;
148 } 157 }
149 } 158 }
@@ -153,10 +162,10 @@ index c3dbead48d..1d1f7e210a 100644
153 0, 162 0,
154 sec); 163 sec);
155diff --git a/bfd/libbfd.h b/bfd/libbfd.h 164diff --git a/bfd/libbfd.h b/bfd/libbfd.h
156index ae9bf76814..2091286c7c 100644 165index 2f5f16e..854bb0c 100644
157--- a/bfd/libbfd.h 166--- a/bfd/libbfd.h
158+++ b/bfd/libbfd.h 167+++ b/bfd/libbfd.h
159@@ -2847,6 +2847,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", 168@@ -2853,6 +2853,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
160 "BFD_RELOC_MICROBLAZE_32_ROSDA", 169 "BFD_RELOC_MICROBLAZE_32_ROSDA",
161 "BFD_RELOC_MICROBLAZE_32_RWSDA", 170 "BFD_RELOC_MICROBLAZE_32_RWSDA",
162 "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM", 171 "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM",
@@ -165,27 +174,27 @@ index ae9bf76814..2091286c7c 100644
165 "BFD_RELOC_MICROBLAZE_64_GOTPC", 174 "BFD_RELOC_MICROBLAZE_64_GOTPC",
166 "BFD_RELOC_MICROBLAZE_64_GOT", 175 "BFD_RELOC_MICROBLAZE_64_GOT",
167diff --git a/bfd/reloc.c b/bfd/reloc.c 176diff --git a/bfd/reloc.c b/bfd/reloc.c
168index aa70fa5874..54d7f538ec 100644 177index a1353a2..4b57de7 100644
169--- a/bfd/reloc.c 178--- a/bfd/reloc.c
170+++ b/bfd/reloc.c 179+++ b/bfd/reloc.c
171@@ -6860,6 +6860,12 @@ ENUM 180@@ -6903,6 +6903,12 @@ ENUMDOC
172 ENUMDOC
173 This is a 32 bit reloc for the microblaze to handle 181 This is a 32 bit reloc for the microblaze to handle
174 expressions of the form "Symbol Op Symbol" 182 expressions of the form "Symbol Op Symbol"
175+ENUM 183 ENUM
176+ BFD_RELOC_MICROBLAZE_32_NONE 184+ BFD_RELOC_MICROBLAZE_32_NONE
177+ENUMDOC 185+ENUMDOC
178+ This is a 32 bit reloc that stores the 32 bit pc relative 186+ This is a 32 bit reloc that stores the 32 bit pc relative
179+ value in two words (with an imm instruction). No relocation is 187+ value in two words (with an imm instruction). No relocation is
180+ done here - only used for relaxing 188+ done here - only used for relaxing
181 ENUM 189+ENUM
182 BFD_RELOC_MICROBLAZE_64_NONE 190 BFD_RELOC_MICROBLAZE_64_NONE
183 ENUMDOC 191 ENUMDOC
192 This is a 64 bit reloc that stores the 32 bit pc relative
184diff --git a/binutils/readelf.c b/binutils/readelf.c 193diff --git a/binutils/readelf.c b/binutils/readelf.c
185index b2f75c0048..8a3226eba9 100644 194index fed0387..92f655d 100644
186--- a/binutils/readelf.c 195--- a/binutils/readelf.c
187+++ b/binutils/readelf.c 196+++ b/binutils/readelf.c
188@@ -12488,6 +12488,10 @@ is_none_reloc (unsigned int reloc_type) 197@@ -12774,6 +12774,10 @@ is_none_reloc (Filedata * filedata, unsigned int reloc_type)
189 || reloc_type == 32 /* R_AVR_DIFF32. */); 198 || reloc_type == 32 /* R_AVR_DIFF32. */);
190 case EM_METAG: 199 case EM_METAG:
191 return reloc_type == 3; /* R_METAG_NONE. */ 200 return reloc_type == 3; /* R_METAG_NONE. */
@@ -197,7 +206,7 @@ index b2f75c0048..8a3226eba9 100644
197 return (reloc_type == 0 /* R_XTENSA_NONE. */ 206 return (reloc_type == 0 /* R_XTENSA_NONE. */
198 || reloc_type == 204 /* R_NDS32_DIFF8. */ 207 || reloc_type == 204 /* R_NDS32_DIFF8. */
199diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c 208diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c
200index 1cfd441c19..e135547e62 100644 209index 50dbfc7..d66e949 100644
201--- a/gas/config/tc-microblaze.c 210--- a/gas/config/tc-microblaze.c
202+++ b/gas/config/tc-microblaze.c 211+++ b/gas/config/tc-microblaze.c
203@@ -2179,7 +2179,9 @@ md_apply_fix (fixS * fixP, 212@@ -2179,7 +2179,9 @@ md_apply_fix (fixS * fixP,
@@ -220,7 +229,7 @@ index 1cfd441c19..e135547e62 100644
220 case BFD_RELOC_32: 229 case BFD_RELOC_32:
221 case BFD_RELOC_MICROBLAZE_32_LO: 230 case BFD_RELOC_MICROBLAZE_32_LO:
222diff --git a/include/elf/microblaze.h b/include/elf/microblaze.h 231diff --git a/include/elf/microblaze.h b/include/elf/microblaze.h
223index ccb47404c5..abcaea561b 100644 232index ae98099..c8cc57b 100644
224--- a/include/elf/microblaze.h 233--- a/include/elf/microblaze.h
225+++ b/include/elf/microblaze.h 234+++ b/include/elf/microblaze.h
226@@ -58,6 +58,7 @@ START_RELOC_NUMBERS (elf_microblaze_reloc_type) 235@@ -58,6 +58,7 @@ START_RELOC_NUMBERS (elf_microblaze_reloc_type)
@@ -231,6 +240,3 @@ index ccb47404c5..abcaea561b 100644
231 240
232 END_RELOC_NUMBERS (R_MICROBLAZE_max) 241 END_RELOC_NUMBERS (R_MICROBLAZE_max)
233 242
234--
2352.15.0
236
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
index de458adb..a671cf84 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0006-Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch
@@ -1,4 +1,4 @@
1From b55dddad1303aafe249e2ba0ddf20460f8f035f6 Mon Sep 17 00:00:00 2001 1From 0cad227ce495a975b32c10a8b6b0970c45024dd6 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
@@ -12,15 +12,16 @@ big & little-endian compilers
12Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 12Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
13Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 13Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
14Upstream-Status: Pending 14Upstream-Status: Pending
15
15--- 16---
16 bfd/elf32-microblaze.c | 4 ++-- 17 bfd/elf32-microblaze.c | 4 ++--
17 1 file changed, 2 insertions(+), 2 deletions(-) 18 1 file changed, 2 insertions(+), 2 deletions(-)
18 19
19diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 20diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
20index 1d1f7e210a..cc6e4b1fd9 100644 21index fc0d3e1..a94799f 100644
21--- a/bfd/elf32-microblaze.c 22--- a/bfd/elf32-microblaze.c
22+++ b/bfd/elf32-microblaze.c 23+++ b/bfd/elf32-microblaze.c
23@@ -1417,9 +1417,9 @@ microblaze_elf_relocate_section (bfd *output_bfd, 24@@ -1402,9 +1402,9 @@ microblaze_elf_relocate_section (bfd *output_bfd,
24 relocation += addend; 25 relocation += addend;
25 relocation -= dtprel_base(info); 26 relocation -= dtprel_base(info);
26 bfd_put_16 (input_bfd, (relocation >> 16) & 0xffff, 27 bfd_put_16 (input_bfd, (relocation >> 16) & 0xffff,
@@ -32,6 +33,3 @@ index 1d1f7e210a..cc6e4b1fd9 100644
32 break; 33 break;
33 case (int) R_MICROBLAZE_64_PCREL : 34 case (int) R_MICROBLAZE_64_PCREL :
34 case (int) R_MICROBLAZE_64: 35 case (int) R_MICROBLAZE_64:
35--
362.15.0
37
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0007-Add-MicroBlaze-address-extension-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch
index ad62345c..9672c516 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0007-Add-MicroBlaze-address-extension-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0007-Add-MicroBlaze-address-extension-instructions.patch
@@ -1,4 +1,4 @@
1From 82c8eacbceb51422d3da75ac30912f9dedc0e832 Mon Sep 17 00:00:00 2001 1From 3895968b5c55321d203cadb7630a2baee8699e17 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:59 -0700 3Date: Mon, 28 Aug 2017 19:53:59 -0700
4Subject: [PATCH] Add MicroBlaze address extension instructions 4Subject: [PATCH] Add MicroBlaze address extension instructions
@@ -14,13 +14,14 @@ for supporting Address extension feature.
14Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 14Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
15Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 15Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
16Upstream-Status: Pending 16Upstream-Status: Pending
17
17--- 18---
18 opcodes/microblaze-opc.h | 13 ++++++++++++- 19 opcodes/microblaze-opc.h | 13 ++++++++++++-
19 opcodes/microblaze-opcm.h | 10 +++++----- 20 opcodes/microblaze-opcm.h | 10 +++++-----
20 2 files changed, 17 insertions(+), 6 deletions(-) 21 2 files changed, 17 insertions(+), 6 deletions(-)
21 22
22diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h 23diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h
23index b33178145f..a64f8362da 100644 24index 773dc81..4e69f76 100644
24--- a/opcodes/microblaze-opc.h 25--- a/opcodes/microblaze-opc.h
25+++ b/opcodes/microblaze-opc.h 26+++ b/opcodes/microblaze-opc.h
26@@ -102,7 +102,7 @@ 27@@ -102,7 +102,7 @@
@@ -79,7 +80,7 @@ index b33178145f..a64f8362da 100644
79 {"swaph", INST_TYPE_RD_R1, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x900001E2, OPCODE_MASK_H4, swaph, arithmetic_inst }, 80 {"swaph", INST_TYPE_RD_R1, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x900001E2, OPCODE_MASK_H4, swaph, arithmetic_inst },
80 {"", 0, 0, 0, 0, 0, 0, 0, 0}, 81 {"", 0, 0, 0, 0, 0, 0, 0, 0},
81diff --git a/opcodes/microblaze-opcm.h b/opcodes/microblaze-opcm.h 82diff --git a/opcodes/microblaze-opcm.h b/opcodes/microblaze-opcm.h
82index 00dc131302..21a3dc8d76 100644 83index 7338f6a..c75f10a 100644
83--- a/opcodes/microblaze-opcm.h 84--- a/opcodes/microblaze-opcm.h
84+++ b/opcodes/microblaze-opcm.h 85+++ b/opcodes/microblaze-opcm.h
85@@ -33,13 +33,13 @@ enum microblaze_instr 86@@ -33,13 +33,13 @@ enum microblaze_instr
@@ -101,6 +102,3 @@ index 00dc131302..21a3dc8d76 100644
101 sbi, shi, swi, msrset, msrclr, tuqula, fadd, frsub, fmul, fdiv, 102 sbi, shi, swi, msrset, msrclr, tuqula, fadd, frsub, fmul, fdiv,
102 fcmp_lt, fcmp_eq, fcmp_le, fcmp_gt, fcmp_ne, fcmp_ge, fcmp_un, flt, 103 fcmp_lt, fcmp_eq, fcmp_le, fcmp_gt, fcmp_ne, fcmp_ge, fcmp_un, flt,
103 fint, fsqrt, 104 fint, fsqrt,
104--
1052.15.0
106
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0008-Add-new-MicroBlaze-bit-field-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch
index 0bc01177..0bc01177 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0008-Add-new-MicroBlaze-bit-field-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0008-Add-new-MicroBlaze-bit-field-instructions.patch
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0009-Fixing-MicroBlaze-IMM-bug.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch
index 0eef0f0d..bb7e91cc 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0009-Fixing-MicroBlaze-IMM-bug.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0009-Fixing-MicroBlaze-IMM-bug.patch
@@ -1,4 +1,4 @@
1From cff770a6f73b82db3259e9577e13b08a1bcd14e8 Mon Sep 17 00:00:00 2001 1From f649406ccaea992f3931e0d9ca9fbd6efb0c553b 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:54:02 -0700 3Date: Mon, 28 Aug 2017 19:54:02 -0700
4Subject: [PATCH] Fixing MicroBlaze IMM bug 4Subject: [PATCH] Fixing MicroBlaze IMM bug
@@ -8,15 +8,16 @@ Fixing the imm bug. with relax option imm -1 is also getting removed this is cor
8Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 8Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
9Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 9Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
10Upstream-Status: Pending 10Upstream-Status: Pending
11
11--- 12---
12 bfd/elf32-microblaze.c | 3 +-- 13 bfd/elf32-microblaze.c | 3 +--
13 1 file changed, 1 insertion(+), 2 deletions(-) 14 1 file changed, 1 insertion(+), 2 deletions(-)
14 15
15diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c 16diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
16index cc6e4b1fd9..6fc475cbcd 100644 17index a94799f..74b00d2 100644
17--- a/bfd/elf32-microblaze.c 18--- a/bfd/elf32-microblaze.c
18+++ b/bfd/elf32-microblaze.c 19+++ b/bfd/elf32-microblaze.c
19@@ -1803,8 +1803,7 @@ microblaze_elf_relax_section (bfd *abfd, 20@@ -1789,8 +1789,7 @@ microblaze_elf_relax_section (bfd *abfd,
20 else 21 else
21 symval += irel->r_addend; 22 symval += irel->r_addend;
22 23
@@ -24,8 +25,5 @@ index cc6e4b1fd9..6fc475cbcd 100644
24- || (symval & 0xffff8000) == 0xffff8000) 25- || (symval & 0xffff8000) == 0xffff8000)
25+ if ((symval & 0xffff8000) == 0) 26+ if ((symval & 0xffff8000) == 0)
26 { 27 {
27 /* We can delete this instruction. */ 28 /* We can delete this instruction. */
28 sec->relax[sec->relax_count].addr = irel->r_offset; 29 sec->relax[sec->relax_count].addr = irel->r_offset;
29--
302.15.0
31
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
index e08bedc7..077343e6 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0010-Fixed-bug-in-GCC-so-that-it-will-support-.long-0U-an.patch
@@ -1,4 +1,4 @@
1From 4449e15997a576761433cc76daf3635742acec62 Mon Sep 17 00:00:00 2001 1From e1bacaa7c1aa387f167afff74876c5acdffc39d9 Mon Sep 17 00:00:00 2001
2From: Mahesh Bodapati <mbodapat@xilinx.com> 2From: Mahesh Bodapati <mbodapat@xilinx.com>
3Date: Wed, 15 Nov 2017 17:45:35 -0800 3Date: Wed, 15 Nov 2017 17:45:35 -0800
4Subject: [PATCH] Fixed bug in GCC so that it will support .long 0U and .long 4Subject: [PATCH] Fixed bug in GCC so that it will support .long 0U and .long
@@ -7,12 +7,13 @@ Subject: [PATCH] Fixed bug in GCC so that it will support .long 0U and .long
7Signed-off-by: Mahesh Bodapati <mbodapat@xilinx.com> 7Signed-off-by: Mahesh Bodapati <mbodapat@xilinx.com>
8Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 8Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
9Upstream-Status: Pending 9Upstream-Status: Pending
10
10--- 11---
11 gas/expr.c | 9 +++++++++ 12 gas/expr.c | 9 +++++++++
12 1 file changed, 9 insertions(+) 13 1 file changed, 9 insertions(+)
13 14
14diff --git a/gas/expr.c b/gas/expr.c 15diff --git a/gas/expr.c b/gas/expr.c
15index 6fc707b8a5..a54b1f4b76 100644 16index 3e28af6..0b7cc76 100644
16--- a/gas/expr.c 17--- a/gas/expr.c
17+++ b/gas/expr.c 18+++ b/gas/expr.c
18@@ -810,6 +810,15 @@ operand (expressionS *expressionP, enum expr_mode mode) 19@@ -810,6 +810,15 @@ operand (expressionS *expressionP, enum expr_mode mode)
@@ -31,6 +32,3 @@ index 6fc707b8a5..a54b1f4b76 100644
31 c = *input_line_pointer; 32 c = *input_line_pointer;
32 switch (c) 33 switch (c)
33 { 34 {
34--
352.15.0
36
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0011-Fixing-MicroBlaze-constant-range-check-issue.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
index fe940905..244a7ade 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0011-Fixing-MicroBlaze-constant-range-check-issue.patch
@@ -1,4 +1,4 @@
1From 4286d83d6dc58131982247f7017b738595329771 Mon Sep 17 00:00:00 2001 1From 9393a3e346d2ccbb86761117260c1dd89070a507 Mon Sep 17 00:00:00 2001
2From: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 2From: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
3Date: Wed, 15 Nov 2017 17:45:34 -0800 3Date: Wed, 15 Nov 2017 17:45:34 -0800
4Subject: [PATCH] Fixing MicroBlaze constant range check issue 4Subject: [PATCH] Fixing MicroBlaze constant range check issue
@@ -8,12 +8,13 @@ Sample error: not in range ffffffff80000000..7fffffff, not ffffffff70000000
8Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com> 8Signed-off-by: Nagaraju Mekala <nagaraju.mekala@xilinx.com>
9Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com> 9Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
10Upstream-Status: Pending 10Upstream-Status: Pending
11
11--- 12---
12 gas/config/tc-microblaze.c | 2 +- 13 gas/config/tc-microblaze.c | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
14 15
15diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c 16diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c
16index 34cb80fac2..7e1233945a 100644 17index 21a5a0c..c614556 100644
17--- a/gas/config/tc-microblaze.c 18--- a/gas/config/tc-microblaze.c
18+++ b/gas/config/tc-microblaze.c 19+++ b/gas/config/tc-microblaze.c
19@@ -749,7 +749,7 @@ parse_imm (char * s, expressionS * e, offsetT min, offsetT max) 20@@ -749,7 +749,7 @@ parse_imm (char * s, expressionS * e, offsetT min, offsetT max)
@@ -25,6 +26,3 @@ index 34cb80fac2..7e1233945a 100644
25 { 26 {
26 as_fatal (_("operand must be absolute in range %lx..%lx, not %lx"), 27 as_fatal (_("operand must be absolute in range %lx..%lx, not %lx"),
27 (long) min, (long) max, (long) e->X_add_number); 28 (long) min, (long) max, (long) e->X_add_number);
28--
292.15.0
30
diff --git a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch
index 1028c50a..e340c506 100644
--- a/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.29/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch
+++ b/meta-xilinx-bsp/recipes-microblaze/binutils/binutils-2.30/0012-MicroBlaze-fix-mask-for-barrel-shift-instructions.patch
@@ -1,4 +1,4 @@
1From a3ce2a329f583a66732b6a435c1bd76a83732dd8 Mon Sep 17 00:00:00 2001 1From 732b5a44a0a032da5ebb775b5df2ee2a36af988f Mon Sep 17 00:00:00 2001
2From: Nathan Rossi <nathan@nathanrossi.com> 2From: Nathan Rossi <nathan@nathanrossi.com>
3Date: Sun, 5 Nov 2017 22:17:39 +1000 3Date: Sun, 5 Nov 2017 22:17:39 +1000
4Subject: [PATCH] MicroBlaze fix mask for barrel shift instructions 4Subject: [PATCH] MicroBlaze fix mask for barrel shift instructions
@@ -12,12 +12,13 @@ bsifi instructions.
12 12
13Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> 13Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
14Upstream-Status: Pending 14Upstream-Status: Pending
15
15--- 16---
16 opcodes/microblaze-opc.h | 6 +++--- 17 opcodes/microblaze-opc.h | 6 +++---
17 1 file changed, 3 insertions(+), 3 deletions(-) 18 1 file changed, 3 insertions(+), 3 deletions(-)
18 19
19diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h 20diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h
20index afb34989d9..68db818d69 100644 21index 4bc400a..9482d81 100644
21--- a/opcodes/microblaze-opc.h 22--- a/opcodes/microblaze-opc.h
22+++ b/opcodes/microblaze-opc.h 23+++ b/opcodes/microblaze-opc.h
23@@ -161,9 +161,9 @@ struct op_code_struct 24@@ -161,9 +161,9 @@ struct op_code_struct
@@ -33,6 +34,3 @@ index afb34989d9..68db818d69 100644
33 {"bsefi", INST_TYPE_RD_R1_IMM5_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64004000, OPCODE_MASK_H32B, bsefi, barrel_shift_inst }, 34 {"bsefi", INST_TYPE_RD_R1_IMM5_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64004000, OPCODE_MASK_H32B, bsefi, barrel_shift_inst },
34 {"bsifi", INST_TYPE_RD_R1_IMM5_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64008000, OPCODE_MASK_H32B, bsifi, barrel_shift_inst }, 35 {"bsifi", INST_TYPE_RD_R1_IMM5_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64008000, OPCODE_MASK_H32B, bsifi, barrel_shift_inst },
35 {"or", INST_TYPE_RD_R1_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x80000000, OPCODE_MASK_H4, microblaze_or, logical_inst }, 36 {"or", INST_TYPE_RD_R1_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x80000000, OPCODE_MASK_H4, microblaze_or, logical_inst },
36--
372.15.0
38