summaryrefslogtreecommitdiffstats
path: root/meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch')
-rw-r--r--meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch29
1 files changed, 15 insertions, 14 deletions
diff --git a/meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch b/meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch
index 76004f15..d504a092 100644
--- a/meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch
+++ b/meta-microblaze/recipes-devtools/gcc/gcc-12/0052-Patch-MicroBlaze.patch
@@ -1,21 +1,22 @@
1From b0ea0d18d1b353421ef7e18d496fd505cb1d5f7d Mon Sep 17 00:00:00 2001 1From fe2781d189493dc82a3714b48bbc12c6bd5cdfd0 Mon Sep 17 00:00:00 2001
2From: Mahesh Bodapati <mbodapat@xilinx.com> 2From: Mahesh Bodapati <mbodapat@xilinx.com>
3Date: Wed, 28 Apr 2021 16:49:18 +0530 3Date: Tue, 13 Sep 2022 16:38:43 +0530
4Subject: [PATCH 52/53] [Patch,MicroBlaze] : If we use break_handler attribute 4Subject: [PATCH 52/53] [Patch,MicroBlaze] : If we use break_handler
5 then interrupt vector call happened to break_handler instead of 5 attribute then interrupt vector call happened to break_handler instead of
6 interrupt_handler. this fix will resolve the issue CR-1081780 This fix will 6 interrupt_handler. this fix will resolve the issue CR-1081780. This
7 not change the behavior of compiler unless there is a usage of break_handler 7 fix will not change the behavior of compiler unless there is a usage of
8 attribute. 8 break_handler attribute. signed-off-by : Mahesh Bodapati
9 <mbodapat@xilinx.com>
9 10
10--- 11---
11 gcc/config/microblaze/microblaze.cc | 13 +++++-------- 12 gcc/config/microblaze/microblaze.cc | 13 +++++--------
12 1 file changed, 5 insertions(+), 8 deletions(-) 13 1 file changed, 5 insertions(+), 8 deletions(-)
13 14
14diff --git a/gcc/config/microblaze/microblaze.cc b/gcc/config/microblaze/microblaze.cc 15diff --git a/gcc/config/microblaze/microblaze.cc b/gcc/config/microblaze/microblaze.cc
15index 6914eb8380c..d0546a164d7 100644 16index 24ac215b6d5..66d62f6f909 100644
16--- a/gcc/config/microblaze/microblaze.cc 17--- a/gcc/config/microblaze/microblaze.cc
17+++ b/gcc/config/microblaze/microblaze.cc 18+++ b/gcc/config/microblaze/microblaze.cc
18@@ -2019,7 +2019,7 @@ microblaze_save_volatiles (tree func) 19@@ -2020,7 +2020,7 @@ microblaze_save_volatiles (tree func)
19 int 20 int
20 microblaze_is_interrupt_variant (void) 21 microblaze_is_interrupt_variant (void)
21 { 22 {
@@ -24,7 +25,7 @@ index 6914eb8380c..d0546a164d7 100644
24 } 25 }
25 int 26 int
26 microblaze_is_break_handler (void) 27 microblaze_is_break_handler (void)
27@@ -2058,7 +2058,7 @@ microblaze_must_save_register (int regno) 28@@ -2059,7 +2059,7 @@ microblaze_must_save_register (int regno)
28 { 29 {
29 if (df_regs_ever_live_p (regno) 30 if (df_regs_ever_live_p (regno)
30 || regno == MB_ABI_MSR_SAVE_REG 31 || regno == MB_ABI_MSR_SAVE_REG
@@ -33,7 +34,7 @@ index 6914eb8380c..d0546a164d7 100644
33 && (regno == MB_ABI_ASM_TEMP_REGNUM 34 && (regno == MB_ABI_ASM_TEMP_REGNUM
34 || regno == MB_ABI_EXCEPTION_RETURN_ADDR_REGNUM))) 35 || regno == MB_ABI_EXCEPTION_RETURN_ADDR_REGNUM)))
35 return 1; 36 return 1;
36@@ -2274,9 +2274,6 @@ compute_frame_size (HOST_WIDE_INT size) 37@@ -2275,9 +2275,6 @@ compute_frame_size (HOST_WIDE_INT size)
37 fast_interrupt = 38 fast_interrupt =
38 microblaze_fast_interrupt_function_p (current_function_decl); 39 microblaze_fast_interrupt_function_p (current_function_decl);
39 save_volatiles = microblaze_save_volatiles (current_function_decl); 40 save_volatiles = microblaze_save_volatiles (current_function_decl);
@@ -43,7 +44,7 @@ index 6914eb8380c..d0546a164d7 100644
43 gp_reg_size = 0; 44 gp_reg_size = 0;
44 mask = 0; 45 mask = 0;
45 var_size = size; 46 var_size = size;
46@@ -3236,7 +3233,7 @@ microblaze_expand_prologue (void) 47@@ -3237,7 +3234,7 @@ microblaze_expand_prologue (void)
47 gen_rtx_PLUS (Pmode, stack_pointer_rtx, 48 gen_rtx_PLUS (Pmode, stack_pointer_rtx,
48 const0_rtx)); 49 const0_rtx));
49 50
@@ -52,7 +53,7 @@ index 6914eb8380c..d0546a164d7 100644
52 /* Do not optimize in flow analysis. */ 53 /* Do not optimize in flow analysis. */
53 MEM_VOLATILE_P (mem_rtx) = 1; 54 MEM_VOLATILE_P (mem_rtx) = 1;
54 55
55@@ -3347,12 +3344,12 @@ microblaze_expand_epilogue (void) 56@@ -3348,12 +3345,12 @@ microblaze_expand_epilogue (void)
56 a load-use stall cycle :) This is also important to handle alloca. 57 a load-use stall cycle :) This is also important to handle alloca.
57 (See comments for if (frame_pointer_needed) below. */ 58 (See comments for if (frame_pointer_needed) below. */
58 59
@@ -68,5 +69,5 @@ index 6914eb8380c..d0546a164d7 100644
68 MEM_VOLATILE_P (mem_rtx) = 1; 69 MEM_VOLATILE_P (mem_rtx) = 1;
69 reg_rtx = gen_rtx_REG (Pmode, MB_ABI_SUB_RETURN_ADDR_REGNUM); 70 reg_rtx = gen_rtx_REG (Pmode, MB_ABI_SUB_RETURN_ADDR_REGNUM);
70-- 71--
712.17.1 722.37.1 (Apple Git-137.1)
72 73