gcc7/gcc7-pfe-0015-Backport-Fix-PR-93242-patchable-function-entry-broke.patch

44 lines
1.2 KiB
Diff

From ff909c0d15095d833e75b86743d218fc9d68869a Mon Sep 17 00:00:00 2001
From: Andrew Pinski <apinski@marvell.com>
Date: Sat, 18 Jan 2020 00:41:06 +0000
Subject: [PATCH 15/22] Backport Fix PR 93242: patchable-function-entry broken
on MIPS
On MIPS, .set noreorder/reorder needs to emitted around
the nop. The template for the nop instruction uses %(/%) to
do that. But default_print_patchable_function_entry uses
fprintf rather than output_asm_insn to output the instruction.
This fixes the problem by using output_asm_insn to emit the nop
instruction.
gcc/ChangeLog
2021-10-07 Giuliano Belinassi <gbelinassi@suse.de>
Backport from mainline
2020-01-20 Andrew Pinski <apinski@marvell.com>
PR middle-end/93242
* targhooks.c (default_print_patchable_function_entry): use
output_asm_insn to emit the nop instruction.
---
gcc/targhooks.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/targhooks.c b/gcc/targhooks.c
index aaf536acf17..185dc7b0b6b 100644
--- a/gcc/targhooks.c
+++ b/gcc/targhooks.c
@@ -1655,7 +1655,7 @@ default_print_patchable_function_entry (FILE *file,
unsigned i;
for (i = 0; i < patch_area_size; ++i)
- fprintf (file, "\t%s\n", nop_templ);
+ output_asm_insn (nop_templ, NULL);
}
bool
--
2.33.1