Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/gpl3/gcc/dist/gcc/config/arm Fix encoding of LSDA e...



details:   https://anonhg.NetBSD.org/src/rev/0abd76a1e05a
branches:  trunk
changeset: 825506:0abd76a1e05a
user:      joerg <joerg%NetBSD.org@localhost>
date:      Tue Jul 18 18:02:37 2017 +0000

description:
Fix encoding of LSDA entries. .eh_frame references in non-PIC mode can
use plain pointers. For PIC, any references to global objects must be
indirect, but the .eh_frame entries themselve should be pcrel.

diffstat:

 external/gpl3/gcc/dist/gcc/config/arm/arm.h |  6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diffs (16 lines):

diff -r 820d2d624648 -r 0abd76a1e05a external/gpl3/gcc/dist/gcc/config/arm/arm.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/arm.h       Tue Jul 18 17:15:45 2017 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/arm.h       Tue Jul 18 18:02:37 2017 +0000
@@ -964,10 +964,8 @@
 /* DWARF unwinding uses the normal indirect/pcrel vs absptr format
    for 32bit platforms. */
 #define ASM_PREFERRED_EH_DATA_FORMAT(CODE, GLOBAL) \
-    ((flag_pic \
-     && ((GLOBAL) || (CODE))) \
-     ? ((GLOBAL) ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4 \
-     : DW_EH_PE_absptr)
+  (flag_pic ? (((GLOBAL) ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4) \
+            : DW_EH_PE_absptr)
 #else
 /* ttype entries (the only interesting data references used)
    use TARGET2 relocations.  */



Home | Main Index | Thread Index | Old Index