From 60f34f084ad075b1495487c9e6fd2455b1e00551 Mon Sep 17 00:00:00 2001 From: Aaron Sawdey Date: Tue, 5 Feb 2019 16:30:45 +0000 Subject: [PATCH] re PR target/89112 (Incorrect code generated by rs6000 memcmp expansion) 2019-02-05 Aaron Sawdey PR target/89112 * config/rs6000/rs6000.md (tf_): Generate a local label for the long branch case. From-SVN: r268546 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/rs6000.md | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 700e3fc..cbc8b3b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-02-05 Aaron Sawdey + + PR target/89112 + * config/rs6000/rs6000.md (tf_): Generate a local label + for the long branch case. + 2019-02-05 Jakub Jelinek PR target/89188 diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 70a4900..d246c30 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -12639,8 +12639,8 @@ else { static char seq[96]; - char *bcs = output_cbranch (operands[3], "$+8", 1, insn); - sprintf(seq, " $+12\;%s;b %%l0", bcs); + char *bcs = output_cbranch (operands[3], ".Lshort%=", 1, insn); + sprintf(seq, " .Lshort%%=\;%s\;b %%l0\;.Lshort%%=:", bcs); return seq; } } -- 2.7.4