aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2002-03-31 20:37:36 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2002-03-31 20:37:36 +0200
commit4f31cce8e475287d0b69622a51aa1f764ff3701d (patch)
tree1417049498b3d6cce755c555156c53305141ed8c /gcc
parentd05972d298cf96a5842ea1b4fd7c3a2ec7c21a99 (diff)
downloadgcc-4f31cce8e475287d0b69622a51aa1f764ff3701d.zip
gcc-4f31cce8e475287d0b69622a51aa1f764ff3701d.tar.gz
gcc-4f31cce8e475287d0b69622a51aa1f764ff3701d.tar.bz2
re PR middle-end/6100 (sparc-sun-solaris2.7 gcc-3.1 RTL checking failure w/-m64 on compile/20020320-1.c)
PR middle-end/6100 * config/sparc/sparc.c (output_cbranch): Use REG_BR_PROB, not REG_BR_PRED. (output_v9branch): Likewise. From-SVN: r51663
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sparc/sparc.c8
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9e687a5..3e3765a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2002-03-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/6100
+ * config/sparc/sparc.c (output_cbranch): Use REG_BR_PROB, not
+ REG_BR_PRED.
+ (output_v9branch): Likewise.
+
2002-03-31 Alexandre Oliva <aoliva@redhat.com>
* gcc.c: Revert previous patch for now.
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index f2b9188..014656f 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -5226,10 +5226,10 @@ output_cbranch (op, dest, label, reversed, annul, noop, insn)
labelno = "";
}
- if (*labelno && insn && (note = find_reg_note (insn, REG_BR_PRED, NULL_RTX)))
+ if (*labelno && insn && (note = find_reg_note (insn, REG_BR_PROB, NULL_RTX)))
{
strcpy (p,
- (((INTVAL (XEXP (note, 0)) & ATTR_FLAG_likely) != 0) ^ far)
+ ((INTVAL (XEXP (note, 0)) >= REG_BR_PROB_BASE / 2) ^ far)
? ",pt" : ",pn");
p += 3;
spaces -= 3;
@@ -5534,10 +5534,10 @@ output_v9branch (op, dest, reg, label, reversed, annul, noop, insn)
p += 2;
}
- if (insn && (note = find_reg_note (insn, REG_BR_PRED, NULL_RTX)))
+ if (insn && (note = find_reg_note (insn, REG_BR_PROB, NULL_RTX)))
{
strcpy (p,
- (((INTVAL (XEXP (note, 0)) & ATTR_FLAG_likely) != 0) ^ far)
+ ((INTVAL (XEXP (note, 0)) >= REG_BR_PROB_BASE / 2) ^ far)
? ",pt" : ",pn");
p += 3;
}