diff options
author | Andrew Pinski <apinski@marvell.com> | 2020-01-18 00:41:06 +0000 |
---|---|---|
committer | Andrew Pinski <apinski@marvell.com> | 2020-01-20 14:22:42 +0000 |
commit | 45d06a4045bebc3dbaaf0b1c676f4e22b7c6aca1 (patch) | |
tree | 3a440d7a74b71849eeeff5302b81f80861c67a3c | |
parent | 414231ba78973dfcb11648a0a5287b989e0148bb (diff) |
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.
ChangeLog:
PR middle-end/93242
* targhooks.c (default_print_patchable_function_entry): Use
output_asm_insn to emit the nop instruction.
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/targhooks.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 436c8924a48..8db7c816622 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +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. + 2020-01-20 Fangrui Song <maskray@google.com> PR middle-end/93194 diff --git a/gcc/targhooks.c b/gcc/targhooks.c index a3f83918f8e..7cb04f30bdb 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -1823,7 +1823,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 |