From b333d8b6d0deca1126f1e206f6ba2678deec437a Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Mon, 22 Oct 2018 16:03:22 +0200 Subject: [PATCH] rs6000: Handle print_operand_address for unexpected RTL (PR87598) As the PR shows, the user can force this to be called on at least some RTL that is not a valid address. Most targets treat this as if the user knows best; let's do the same. PR target/87598 * config/rs6000/rs6000.c (print_operand_address): For unexpected RTL call output_addr_const and hope for the best. From-SVN: r265392 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/rs6000.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 96f187500df..d799af2aa2a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-10-22 Segher Boessenkool + + PR target/87598 + * config/rs6000/rs6000.c (print_operand_address): For unexpected RTL + call output_addr_const and hope for the best. + 2018-10-22 Richard Biener * gimple-ssa-evrp-analyze.c diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 85b05f6618c..75e30ce9784 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -21273,7 +21273,7 @@ print_operand_address (FILE *file, rtx x) fprintf (file, "(%s)", reg_names[REGNO (XVECEXP (tocrel_base_oac, 0, 1))]); } else - gcc_unreachable (); + output_addr_const (file, x); } /* Implement TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA. */ -- 2.30.2