|
@@ -1,15 +1,11 @@
|
|
|
-Fix DWARF compilation for FDPIC targets
|
|
|
-
|
|
|
-Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
|
|
|
-
|
|
|
-diff -Nur gcc-6.1.0.orig/libgcc/unwind-dw2-fde-dip.c gcc-6.1.0/libgcc/unwind-dw2-fde-dip.c
|
|
|
---- gcc-6.1.0.orig/libgcc/unwind-dw2-fde-dip.c 2016-01-04 15:30:50.000000000 +0100
|
|
|
-+++ gcc-6.1.0/libgcc/unwind-dw2-fde-dip.c 2016-08-05 02:17:40.424195128 +0200
|
|
|
+diff -Nur gcc-6.3.0.orig/libgcc/unwind-dw2-fde-dip.c gcc-6.3.0/libgcc/unwind-dw2-fde-dip.c
|
|
|
+--- gcc-6.3.0.orig/libgcc/unwind-dw2-fde-dip.c 2016-01-04 15:30:50.000000000 +0100
|
|
|
++++ gcc-6.3.0/libgcc/unwind-dw2-fde-dip.c 2017-05-18 00:43:58.000000000 +0200
|
|
|
@@ -124,7 +124,11 @@
|
|
|
{
|
|
|
_Unwind_Ptr pc_low;
|
|
|
_Unwind_Ptr pc_high;
|
|
|
-+#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__
|
|
|
++#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ || defined __SH_FDPIC__
|
|
|
+ struct elf32_fdpic_loadaddr load_base;
|
|
|
+#else
|
|
|
_Unwind_Ptr load_base;
|
|
@@ -22,7 +18,7 @@ diff -Nur gcc-6.1.0.orig/libgcc/unwind-dw2-fde-dip.c gcc-6.1.0/libgcc/unwind-dw2
|
|
|
const ElfW(Phdr) *phdr, *p_eh_frame_hdr, *p_dynamic;
|
|
|
long n, match;
|
|
|
-#ifdef __FRV_FDPIC__
|
|
|
-+#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__
|
|
|
++#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ || defined __SH_FDPIC__
|
|
|
struct elf32_fdpic_loadaddr load_base;
|
|
|
#else
|
|
|
_Unwind_Ptr load_base;
|
|
@@ -31,7 +27,7 @@ diff -Nur gcc-6.1.0.orig/libgcc/unwind-dw2-fde-dip.c gcc-6.1.0/libgcc/unwind-dw2
|
|
|
}
|
|
|
}
|
|
|
-# elif defined __FRV_FDPIC__ && defined __linux__
|
|
|
-+# elif (defined __FRV_FDPIC__ || defined __BFIN_FDPIC__) && defined __linux__
|
|
|
++# elif (defined __FRV_FDPIC__ || defined __BFIN_FDPIC__) || defined __SH_FDPIC__ && defined __linux__
|
|
|
data->dbase = load_base.got_value;
|
|
|
# else
|
|
|
# error What is DW_EH_PE_datarel base on this platform?
|