summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-09 19:45:20 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-09 19:45:20 +0000
commit045a0eef84c20751f24d7bda92599c9bf36ab1f9 (patch)
tree2ba63e77dc423874fc8e72ea750653afaab220be
parent105e74c21f0e190bae1eed8d21652737e3bdfaeb (diff)
downloadppe42-gcc-045a0eef84c20751f24d7bda92599c9bf36ab1f9.tar.gz
ppe42-gcc-045a0eef84c20751f24d7bda92599c9bf36ab1f9.zip
* reorg.c (get_branch_condition): Use reversed_comparison_code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@52090 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/reorg.c11
2 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cecfe5c0a3d..671c84da659 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2002-04-08 Richard Henderson <rth@redhat.com>
+
+ * reorg.c (get_branch_condition): Use reversed_comparison_code.
+
2002-04-09 Stephane Carrez <Stephane.Carrez@worldnet.fr>
* config/m68hc11/larith.asm (__map_data_section): Fix condition
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 984ec926aae..f4c484bcf71 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -1086,9 +1086,14 @@ get_branch_condition (insn, target)
|| (GET_CODE (XEXP (src, 2)) == LABEL_REF
&& XEXP (XEXP (src, 2), 0) == target))
&& XEXP (src, 1) == pc_rtx)
- return gen_rtx_fmt_ee (reverse_condition (GET_CODE (XEXP (src, 0))),
- GET_MODE (XEXP (src, 0)),
- XEXP (XEXP (src, 0), 0), XEXP (XEXP (src, 0), 1));
+ {
+ enum rtx_code rev;
+ rev = reversed_comparison_code (XEXP (src, 0), insn);
+ if (rev != UNKNOWN)
+ return gen_rtx_fmt_ee (rev, GET_MODE (XEXP (src, 0)),
+ XEXP (XEXP (src, 0), 0),
+ XEXP (XEXP (src, 0), 1));
+ }
return 0;
}
OpenPOWER on IntegriCloud