Module Name:    src
Committed By:   rin
Date:           Thu Aug 17 03:08:15 UTC 2023

Modified Files:
        src/external/gpl3/gcc/dist/gcc/config/vax: vax.cc

Log Message:
gcc/vax: XXX: Forcibly disable gas(1) directives for CFI table

Otherwise, wired relocation occur for readonly section `.eh_frame',
by which libc.so cannot link:

----
warning: dynamic relocation to `?' in readonly section `.eh_frame'
warning: creating DT_TEXTREL in a shared object
.eh_frame_hdr refers to overlapping FDEs
final link failed: bad value
----

This workaround has been introduced by vax.c, v1.15:

http://cvsweb.netbsd.org/bsdweb.cgi/src/external/gpl3/gcc/dist/gcc/config/vax/Attic/vax.c#rev1.15

but accidentally lost during GCC 12.3.0 merge.


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1 -r1.2 src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc
diff -u src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc:1.1.1.1 src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc:1.2
--- src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc:1.1.1.1	Sun Jul 30 05:21:07 2023
+++ src/external/gpl3/gcc/dist/gcc/config/vax/vax.cc	Thu Aug 17 03:08:15 2023
@@ -152,6 +152,11 @@ vax_option_override (void)
   if (TARGET_G_FLOAT)
     REAL_MODE_FORMAT (DFmode) = &vax_g_format;
 
+  /* XXX For NetBSD, disable gas(1) directives for CFI tables.
+     Otherwise, wired relocations occur for readonly section
+     `.eh_frame', by which libc.so cannot link.  */
+  flag_dwarf2_cfi_asm = 0;
+
 #ifdef SUBTARGET_OVERRIDE_OPTIONS
   SUBTARGET_OVERRIDE_OPTIONS;
 #endif

Reply via email to