diff options
Diffstat (limited to 'patches/libdw-ignore-really-large-discriminator.patch')
-rw-r--r-- | patches/libdw-ignore-really-large-discriminator.patch | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/patches/libdw-ignore-really-large-discriminator.patch b/patches/libdw-ignore-really-large-discriminator.patch deleted file mode 100644 index d18b7e98..00000000 --- a/patches/libdw-ignore-really-large-discriminator.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 6583a5497fb60496ae7f9df9907be1248a339360 Mon Sep 17 00:00:00 2001 -From: Mark Wielaard <mark@klomp.org> -Date: Thu, 26 Oct 2023 16:49:08 +0200 -Subject: [PATCH] libdw: ignore really large discriminator - -llvm can create really large discriminator values. We used to flag those -as invalid when the value wouldn't fit in 24 bits. Just truncate the value. - - * libdw/dwarf_getsrclines.c (add_new_line): Define SETX. - Use SETX to set discriminator. - -https://sourceware.org/bugzilla/show_bug.cgi?id=30967 - -Signed-off-by: Mark Wielaard <mark@klomp.org> ---- - libdw/dwarf_getsrclines.c | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/libdw/dwarf_getsrclines.c b/libdw/dwarf_getsrclines.c -index df003c5f..69e10c7b 100644 ---- a/libdw/dwarf_getsrclines.c -+++ b/libdw/dwarf_getsrclines.c -@@ -129,6 +129,12 @@ add_new_line (struct line_state *state, struct linelist *new_line) - return true; \ - } while (0) - -+ /* Same as above, but don't flag as "invalid" just use truncated -+ value. Used for discriminator for which llvm might use a value -+ that won't fit 24 bits. */ -+#define SETX(field) \ -+ new_line->line.field = state->field; \ -+ - SET (addr); - SET (op_index); - SET (file); -@@ -140,7 +146,7 @@ add_new_line (struct line_state *state, struct linelist *new_line) - SET (prologue_end); - SET (epilogue_begin); - SET (isa); -- SET (discriminator); -+ SETX (discriminator); - SET (context); - SET (function_name); - --- -2.42.0.869.gea05f2083d-goog - |