summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/jump.c5
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index db71b1e4e10..eb1ad100fb0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-03-03 Roger Sayle <roger@eyesopen.com>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * jump.c (redirect_exp_1): If nlabel is a NULL pointer create a
+ RETURN rtx, and not a LABEL_REF containing a NULL pointer.
+
2005-03-03 Hans-Peter Nilsson <hp@axis.com>
Describe special registers SRP and MOF as allocatable registers.
diff --git a/gcc/jump.c b/gcc/jump.c
index 4af8b5a5a10..2bf4b2a5084 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -1539,7 +1539,10 @@ redirect_exp_1 (rtx *loc, rtx olabel, rtx nlabel, rtx insn)
}
else if (code == RETURN && olabel == 0)
{
- x = gen_rtx_LABEL_REF (VOIDmode, nlabel);
+ if (nlabel)
+ x = gen_rtx_LABEL_REF (VOIDmode, nlabel);
+ else
+ x = gen_rtx_RETURN (VOIDmode);
if (loc == &PATTERN (insn))
x = gen_rtx_SET (VOIDmode, pc_rtx, x);
validate_change (insn, loc, x, 1);
OpenPOWER on IntegriCloud