summaryrefslogtreecommitdiffstats
path: root/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2018-03-01 23:54:44 +0100
committer Matteo Bernardini <ponce@slackbuilds.org>2021-04-18 12:22:51 +0200
commit786c4c99119f573ab454dfb0e9645778faed1148 (patch)
tree566814b2f874c02b46a2c55b5bfec6d3c0f1c543 /development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
parent71e30bdc970908d251aff5d90f9805a57506e384 (diff)
downloadslackbuilds-786c4c99119f573ab454dfb0e9645778faed1148.tar.gz
slackbuilds-786c4c99119f573ab454dfb0e9645778faed1148.tar.xz
development/gcc5: update to 5.5.0
This re-aligns the gcc5.SlackBuild script with the latest gcc.SlackBuild in Slackware 14.2. Retpoline patches are included. Signed-off-by: Eric Hameleers <alien@slackware.com> Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Diffstat (limited to 'development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff')
-rw-r--r--development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff59
1 files changed, 59 insertions, 0 deletions
diff --git a/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff b/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
new file mode 100644
index 0000000000..f6f30d1d22
--- /dev/null
+++ b/development/gcc5/patches/0003-i386-More-use-reference-of-struct-ix86_frame-to-avoi.diff
@@ -0,0 +1,59 @@
+From 839ca2d69157ef03c8df0ab912dacdb991738694 Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 15 Jan 2018 11:33:42 +0000
+Subject: [PATCH 3/9] i386: More use reference of struct ix86_frame to avoid copy
+
+When there is no need to make a copy of ix86_frame, we can use reference
+of struct ix86_frame to avoid copy.
+
+ Backport from mainline
+ * config/i386/i386.c (ix86_expand_prologue): Use reference of
+ struct ix86_frame.
+ (ix86_expand_epilogue): Likewise.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@256695 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 7 +++++++
+ gcc/config/i386/i386.c | 6 ++----
+ 2 files changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 397ef7c..986e6d7 100644
+--- a/src/gcc/config/i386/i386.c
++++ b/src/gcc/config/i386/i386.c
+@@ -13667,7 +13667,6 @@ ix86_expand_prologue (void)
+ {
+ struct machine_function *m = cfun->machine;
+ rtx insn, t;
+- struct ix86_frame frame;
+ HOST_WIDE_INT allocate;
+ bool int_registers_saved;
+ bool sse_registers_saved;
+@@ -13691,7 +13690,7 @@ ix86_expand_prologue (void)
+ m->fs.sp_valid = true;
+
+ ix86_compute_frame_layout ();
+- frame = m->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+
+ if (!TARGET_64BIT && ix86_function_ms_hook_prologue (current_function_decl))
+ {
+@@ -14354,13 +14353,12 @@ ix86_expand_epilogue (int style)
+ {
+ struct machine_function *m = cfun->machine;
+ struct machine_frame_state frame_state_save = m->fs;
+- struct ix86_frame frame;
+ bool restore_regs_via_mov;
+ bool using_drap;
+
+ ix86_finalize_stack_realign_flags ();
+ ix86_compute_frame_layout ();
+- frame = m->frame;
++ struct ix86_frame &frame = cfun->machine->frame;
+
+ m->fs.sp_valid = (!frame_pointer_needed
+ || (crtl->sp_is_unchanging
+--
+2.7.4
+