summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/rs6000.md
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-05-04 22:15:23 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-05-04 22:15:23 +0000
commit2b3dfdb8611ae5a53b9a321c47c94a9182b12326 (patch)
treed493f07d81ae30e20225cca33c92741716320b92 /gcc/config/rs6000/rs6000.md
parent0618cd1d59bfb4ceb0aa6382de739c47343c9fb3 (diff)
downloadgcc-2b3dfdb8611ae5a53b9a321c47c94a9182b12326.tar.gz
* config/rs6000/rs6000-protos.h: Add output_cbranch.
* config/rs6000/rs6000.c (ccr_bit_negated_p): Delete. (print_operand): Delete %t and %T codes. (output_cbranch): New function. Support branch prediction. * config/rs6000/rs6000.md: Use output_cbranch for conditional branches and returns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33686 138bc75d-0d04-0410-961f-82ee72b054a4
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")])