public inbox for binutils-cvs@sourceware.org
 help / color / mirror / Atom feed
* [binutils-gdb] gas: Restore tc_pe_dwarf2_emit_offset for pe-aarch64
@ 2023-01-10 23:32 Mark Harmstone
  0 siblings, 0 replies; only message in thread
From: Mark Harmstone @ 2023-01-10 23:32 UTC (permalink / raw)
  To: bfd-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7697bc652347ec5009c2225d0abd3aff41477917

commit 7697bc652347ec5009c2225d0abd3aff41477917
Author: Mark Harmstone <mark@harmstone.com>
Date:   Tue Dec 27 22:16:04 2022 +0000

    gas: Restore tc_pe_dwarf2_emit_offset for pe-aarch64
    
    Restores tc_pe_dwarf2_emit_offset in tc-aarch64.c, which is needed to
    make sure that DWARF offsets are encoded correctly (they're secrels in
    COFF). There were remnants of this there before, but they were removed
    by Jedidiah's original patch - presumably because we didn't yet have
    .secrel32.

Diff:
---
 gas/config/tc-aarch64.c | 11 +++++++++++
 gas/config/tc-aarch64.h |  5 +++++
 2 files changed, 16 insertions(+)

diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index ad070cd0618..2b74db256a2 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -2116,6 +2116,17 @@ s_secrel (int dummy ATTRIBUTE_UNUSED)
   input_line_pointer--;
   demand_empty_rest_of_line ();
 }
+
+void
+tc_pe_dwarf2_emit_offset (symbolS *symbol, unsigned int size)
+{
+  expressionS exp;
+
+  exp.X_op = O_secrel;
+  exp.X_add_symbol = symbol;
+  exp.X_add_number = 0;
+  emit_expr (&exp, size);
+}
 #endif	/* TE_PE */
 
 static void s_aarch64_arch (int);
diff --git a/gas/config/tc-aarch64.h b/gas/config/tc-aarch64.h
index fa4b3ac577e..134c1f87b4f 100644
--- a/gas/config/tc-aarch64.h
+++ b/gas/config/tc-aarch64.h
@@ -315,7 +315,12 @@ extern int tc_aarch64_regname_to_dw2regnum (char *regname);
 extern void tc_aarch64_frame_initial_instructions (void);
 
 #ifdef TE_PE
+
 #define O_secrel O_md1
+
+#define TC_DWARF2_EMIT_OFFSET  tc_pe_dwarf2_emit_offset
+void tc_pe_dwarf2_emit_offset (symbolS *, unsigned int);
+
 #endif /* TE_PE */
 
 #endif /* TC_AARCH64 */

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-01-10 23:32 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-10 23:32 [binutils-gdb] gas: Restore tc_pe_dwarf2_emit_offset for pe-aarch64 Mark Harmstone

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).