diff options
author | Geoff Keating <geoffk@cygnus.com> | 2000-05-29 05:18:03 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2000-05-29 05:18:03 +0000 |
commit | 37c67319e14b70957932cd33cb5b0a318213e01a (patch) | |
tree | 01b6b690b784043b57e4728793fee0e6296a9e7a /gcc | |
parent | 1270c2550479c5b8d66a8879c7948dd694a3cc6e (diff) | |
download | gcc-37c67319e14b70957932cd33cb5b0a318213e01a.zip gcc-37c67319e14b70957932cd33cb5b0a318213e01a.tar.gz gcc-37c67319e14b70957932cd33cb5b0a318213e01a.tar.bz2 |
rs6000.c (output_cbranch): Escape '%' characters so output_operand doesn't see them.
* config/rs6000/rs6000.c (output_cbranch): Escape '%' characters
so output_operand doesn't see them.
From-SVN: r34244
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0a6110a..28ccdfa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-05-28 Geoff Keating <geoffk@cygnus.com> + + * config/rs6000/rs6000.c (output_cbranch): Escape '%' characters + so output_operand doesn't see them. + Sun May 28 18:37:07 2000 Clinton Popetz <cpopetz@cygnus.com> * lcm.c (make_preds_opaque): Fix comment. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 2ea0ae2..5a54253 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -4115,6 +4115,10 @@ output_cbranch (op, label, reversed, insn) else s += sprintf (s, "{b%s|b%s%s} ", ccode, ccode, pred); + /* We need to escape any '%' characters in the reg_names string. + Assume they'd only be the first character... */ + if (reg_names[cc_regno + CR0_REGNO][0] == '%') + *s++ = '%'; s += sprintf (s, "%s", reg_names[cc_regno + CR0_REGNO]); if (label != NULL) |