aboutsummaryrefslogtreecommitdiff
path: root/gcc/ssa.c
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-09-27 00:50:50 +0000
committerRichard Henderson <rth@gcc.gnu.org>2002-09-26 17:50:50 -0700
commitcde0ce6e71902c58da287bae01c0f77b62e8dfd0 (patch)
tree4fa55fbde3a96a8c3c7eff32ae8b8a25f24f3cf4 /gcc/ssa.c
parent5fd452e8def2e0f454455760efae1f5a6d92eced (diff)
downloadgcc-cde0ce6e71902c58da287bae01c0f77b62e8dfd0.zip
gcc-cde0ce6e71902c58da287bae01c0f77b62e8dfd0.tar.gz
gcc-cde0ce6e71902c58da287bae01c0f77b62e8dfd0.tar.bz2
ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when handling undefined values.
* ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when handling undefined values. From-SVN: r57564
Diffstat (limited to 'gcc/ssa.c')
-rw-r--r--gcc/ssa.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/gcc/ssa.c b/gcc/ssa.c
index 406928b..1ba8e0c 100644
--- a/gcc/ssa.c
+++ b/gcc/ssa.c
@@ -924,20 +924,17 @@ rename_insn_1 (ptr, data)
{
rtx new_reg = ssa_rename_to_lookup (x);
- if (new_reg != RENAME_NO_RTX)
+ if (new_reg != RENAME_NO_RTX && new_reg != NULL_RTX)
{
- if (new_reg != NULL_RTX)
- {
- if (GET_MODE (x) != GET_MODE (new_reg))
- abort ();
- *ptr = new_reg;
- }
- else
- {
- /* Undefined value used, rename it to a new pseudo register so
- that it cannot conflict with an existing register */
- *ptr = gen_reg_rtx (GET_MODE(x));
- }
+ if (GET_MODE (x) != GET_MODE (new_reg))
+ abort ();
+ *ptr = new_reg;
+ }
+ else
+ {
+ /* Undefined value used, rename it to a new pseudo register so
+ that it cannot conflict with an existing register. */
+ *ptr = gen_reg_rtx (GET_MODE (x));
}
}
return -1;