[PATCH] genattrtab: Parenthesize expressions correctly (PR92107)

Segher Boessenkool segher@kernel.crashing.org
Tue Oct 15 22:31:00 GMT 2019


As PR92107 shows, genattrtab doesn't parenthesize expressions correctly
(or at all, even).  This fixes it.

I'll commit it as trivial and obvious if my bootstrap with it shows no
problems (or someone tells me not to, of course).


Segher


2019-10-15  Segher Boessenkool  <segher@kernel.crashing.org>

	PR rtl-optimization/92107
	* genattrtab.c (write_attr_value) <do_operator>: Parenthesize the
	expression written.

---
 gcc/genattrtab.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c
index cdf0b5c..2fd8593 100644
--- a/gcc/genattrtab.c
+++ b/gcc/genattrtab.c
@@ -4425,11 +4425,11 @@ write_attr_value (FILE *outf, class attr_desc *attr, rtx value)
       goto do_operator;
 
     do_operator:
+      fprintf (outf, "(");
       write_attr_value (outf, attr, XEXP (value, 0));
-      fputc (' ', outf);
-      fputc (op,  outf);
-      fputc (' ', outf);
+      fprintf (outf, " %c ", op);
       write_attr_value (outf, attr, XEXP (value, 1));
+      fprintf (outf, ")");
       break;
 
     case IF_THEN_ELSE:
-- 
1.8.3.1



More information about the Gcc-patches mailing list