diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2018-10-22 16:03:22 +0200 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2018-10-22 16:03:22 +0200 |
commit | b333d8b6d0deca1126f1e206f6ba2678deec437a (patch) | |
tree | 9bf964550a7a591fffa7bc5652222d9402ec8e75 /gcc | |
parent | e86087eeb8b9cab8caf7f223b602383a3216c810 (diff) | |
download | gcc-b333d8b6d0deca1126f1e206f6ba2678deec437a.zip gcc-b333d8b6d0deca1126f1e206f6ba2678deec437a.tar.gz gcc-b333d8b6d0deca1126f1e206f6ba2678deec437a.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 96f1875..d799af2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-10-22 Segher Boessenkool <segher@kernel.crashing.org> + + 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 <rguenther@suse.de> * gimple-ssa-evrp-analyze.c diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 85b05f6..75e30ce 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. */ |