summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/rs6000.md
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/rs6000/rs6000.md')
-rw-r--r--gcc/config/rs6000/rs6000.md21
1 files changed, 10 insertions, 11 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 4573330a820..66a23508cf7 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -13992,11 +13992,7 @@ operands[2] = GEN_INT (INTVAL (operands[1]) >> 32);
""
"*
{
- if (get_attr_length (insn) == 8)
- return \"%C1bc %t1,%j1,%l0\";
- else
- return \"%C1bc %T1,%j1,%$+8\;b %l0\";
-
+ return output_cbranch (operands[1], \"%l0\", 0, insn);
}"
[(set_attr "type" "branch")])
@@ -14009,7 +14005,10 @@ operands[2] = GEN_INT (INTVAL (operands[1]) >> 32);
(return)
(pc)))]
"direct_return ()"
- "{%C0bcr|%C0bclr} %t0,%j0"
+ "*
+{
+ return output_cbranch (operands[0], NULL, 0, insn);
+}"
[(set_attr "type" "branch")
(set_attr "length" "8")])
@@ -14024,10 +14023,7 @@ operands[2] = GEN_INT (INTVAL (operands[1]) >> 32);
""
"*
{
- if (get_attr_length (insn) == 8)
- return \"%C1bc %T1,%j1,%l0\";
- else
- return \"%C1bc %t1,%j1,%$+8\;b %l0\";
+ return output_cbranch (operands[1], \"%l0\", 1, insn);
}"
[(set_attr "type" "branch")])
@@ -14040,7 +14036,10 @@ operands[2] = GEN_INT (INTVAL (operands[1]) >> 32);
(pc)
(return)))]
"direct_return ()"
- "{%C0bcr|%C0bclr} %T0,%j0"
+ "*
+{
+ return output_cbranch (operands[0], NULL, 1, insn);
+}"
[(set_attr "type" "branch")
(set_attr "length" "8")])