diff options
author | Patrick Williams <patrick@stwcx.xyz> | 2015-09-15 22:41:29 +0300 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2015-09-15 22:41:29 +0300 |
commit | 21f9b84b4b729fbd7acbd465e7a3f726e4d20f91 (patch) | |
tree | eb2d091d427ca0813b445509d59cc8e27e8ad25f /yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch | |
parent | 101cef31e2bf54c678501155cd2106251acbd076 (diff) | |
parent | c124f4f2e04dca16a428a76c89677328bc7bf908 (diff) | |
download | openbmc-21f9b84b4b729fbd7acbd465e7a3f726e4d20f91.tar.xz |
Merge commit 'c124f4f2e04dca16a428a76c89677328bc7bf908' as 'yocto-poky'
Diffstat (limited to 'yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch')
-rw-r--r-- | yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch b/yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch new file mode 100644 index 000000000..3b6c94c49 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/gcc/gcc-4.9/0056-define-default-cfa-register-mapping.patch @@ -0,0 +1,75 @@ +From c0235a33de8c4f78cce35b2a8c2035c83fe1bd14 Mon Sep 17 00:00:00 2001 +From: hainque <hainque@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Fri, 5 Dec 2014 17:01:42 +0000 +Subject: [PATCH] 2014-12-05 Olivier Hainque <hainque@adacore.com> + + gcc/ + * defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default. + * dwarf2cfi.c (init_one_dwarf_reg_size): Honor + DWARF_REG_TO_UNWIND_COLUMN. + + libgcc/ + * unwind-dw2.c (DWARF_REG_TO_UNWIND_COLUMN): Remove default def, + now provided by defaults.h. + + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218429 138bc75d-0d04-0410-961f-82ee72b054a4 + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Upstream-Status: Backport [gcc 5.0] + +--- + gcc/ChangeLog | 6 ++++++ + gcc/defaults.h | 5 +++++ + gcc/dwarf2cfi.c | 3 ++- + libgcc/ChangeLog | 5 +++++ + libgcc/unwind-dw2.c | 4 ---- + 5 files changed, 18 insertions(+), 5 deletions(-) + +Index: gcc-4.9.2/gcc/defaults.h +=================================================================== +--- gcc-4.9.2.orig/gcc/defaults.h ++++ gcc-4.9.2/gcc/defaults.h +@@ -438,6 +438,11 @@ see the files COPYING3 and COPYING.RUNTI + #define DWARF_FRAME_REGNUM(REG) DBX_REGISTER_NUMBER (REG) + #endif + ++/* The mapping from dwarf CFA reg number to internal dwarf reg numbers. */ ++#ifndef DWARF_REG_TO_UNWIND_COLUMN ++#define DWARF_REG_TO_UNWIND_COLUMN(REGNO) (REGNO) ++#endif ++ + /* Map register numbers held in the call frame info that gcc has + collected using DWARF_FRAME_REGNUM to those that should be output in + .debug_frame and .eh_frame. */ +Index: gcc-4.9.2/gcc/dwarf2cfi.c +=================================================================== +--- gcc-4.9.2.orig/gcc/dwarf2cfi.c ++++ gcc-4.9.2/gcc/dwarf2cfi.c +@@ -280,8 +280,9 @@ void init_one_dwarf_reg_size (int regno, + { + const unsigned int dnum = DWARF_FRAME_REGNUM (regno); + const unsigned int rnum = DWARF2_FRAME_REG_OUT (dnum, 1); ++ const unsigned int dcol = DWARF_REG_TO_UNWIND_COLUMN (rnum); + +- const HOST_WIDE_INT slotoffset = rnum * GET_MODE_SIZE (slotmode); ++ const HOST_WIDE_INT slotoffset = dcol * GET_MODE_SIZE (slotmode); + const HOST_WIDE_INT regsize = GET_MODE_SIZE (regmode); + + init_state->processed_regno[regno] = true; +Index: gcc-4.9.2/libgcc/unwind-dw2.c +=================================================================== +--- gcc-4.9.2.orig/libgcc/unwind-dw2.c ++++ gcc-4.9.2/libgcc/unwind-dw2.c +@@ -55,10 +55,6 @@ + #define PRE_GCC3_DWARF_FRAME_REGISTERS DWARF_FRAME_REGISTERS + #endif + +-#ifndef DWARF_REG_TO_UNWIND_COLUMN +-#define DWARF_REG_TO_UNWIND_COLUMN(REGNO) (REGNO) +-#endif +- + /* ??? For the public function interfaces, we tend to gcc_assert that the + column numbers are in range. For the dwarf2 unwind info this does happen, + although so far in a case that doesn't actually matter. |