summaryrefslogtreecommitdiffstats
path: root/meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch')
-rw-r--r--meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch48
1 files changed, 0 insertions, 48 deletions
diff --git a/meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch b/meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch
deleted file mode 100644
index 5c69eed7..00000000
--- a/meta-microblaze/recipes-devtools/binutils/binutils/0037-Fixing-the-imm-imml-generation-for-16-bit-argument-C.patch
+++ /dev/null
@@ -1,48 +0,0 @@
1From 9f2319c6e32c4449604c2ec26042123a88eeb87c Mon Sep 17 00:00:00 2001
2From: Mahesh Bodapati <mbodapat@xilinx.com>
3Date: Mon, 24 Jan 2022 16:21:33 +0530
4Subject: [PATCH 37/38] Fixing the imm/imml generation for 16 bit argument
5 [CR-1115234].
6
7Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
8---
9 bfd/elf32-microblaze.c | 6 +++++-
10 bfd/elf64-microblaze.c | 5 ++++-
11 2 files changed, 9 insertions(+), 2 deletions(-)
12
13diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
14index e284b0e5398..8b947a6ec79 100644
15--- a/bfd/elf32-microblaze.c
16+++ b/bfd/elf32-microblaze.c
17@@ -2016,7 +2016,11 @@ microblaze_elf_relax_section (bfd *abfd,
18 else
19 symval += irel->r_addend;
20
21- if ((symval & 0xffff8000) == 0)
22+ /* Check for imm command argument value to decide if
23+ * we need full 32-bit value for next command */
24+ if ((symval & 0xffff8000) == 0
25+ || (symval & 0xffff8000) == 0xffff8000)
26+
27 {
28 /* We can delete this instruction. */
29 sdata->relax[sdata->relax_count].addr = irel->r_offset;
30diff --git a/bfd/elf64-microblaze.c b/bfd/elf64-microblaze.c
31index 3b6e6aa47bd..cecfb5506f8 100644
32--- a/bfd/elf64-microblaze.c
33+++ b/bfd/elf64-microblaze.c
34@@ -2011,7 +2011,10 @@ microblaze_elf_relax_section (bfd *abfd,
35 else
36 symval += irel->r_addend;
37
38- if ((symval & 0xffff8000) == 0)
39+ /* Check for imm command argument value to decide if
40+ * we need full 32-bit value for next command */
41+ if ((symval & 0xffff8000) == 0
42+ || (symval & 0xffff8000) == 0xffff8000)
43 {
44 /* We can delete this instruction. */
45 sdata->relax[sdata->relax_count].addr = irel->r_offset;
46--
472.25.1
48