(hppa_legitimize_address): If we can't legitimize, do nothing; don't

call abort.

From-SVN: r6191
This commit is contained in:
Richard Kenner 1993-12-06 08:01:49 -05:00
parent cb778d408a
commit 77fc931316
1 changed files with 9 additions and 10 deletions

View File

@ -1,5 +1,5 @@
/* Subroutines for insn-output.c for HPPA.
Copyright (C) 1992 Free Software Foundation, Inc.
Copyright (C) 1992, 1993 Free Software Foundation, Inc.
Contributed by Tim Moore (moore@cs.utah.edu), based on sparc.c
This file is part of GNU CC.
@ -705,15 +705,14 @@ hppa_legitimize_address (x, oldx, mode)
if (GET_CODE (y) == CONST)
y = XEXP (y, 0);
/* 'y' had better be a PLUS or MINUS expression at this point. */
if (GET_CODE (y) != PLUS && GET_CODE (y) != MINUS)
abort();
regx1 = force_reg (Pmode, force_operand (XEXP (x, 0), 0));
regy1 = force_reg (Pmode, force_operand (XEXP (y, 0), 0));
regy2 = force_reg (Pmode, force_operand (XEXP (y, 1), 0));
regx1 = force_reg (Pmode, gen_rtx (GET_CODE (y), Pmode, regx1, regy2));
return force_reg (Pmode, gen_rtx (PLUS, Pmode, regx1, regy1));
if (GET_CODE (y) == PLUS || GET_CODE (y) == MINUS)
{
regx1 = force_reg (Pmode, force_operand (XEXP (x, 0), 0));
regy1 = force_reg (Pmode, force_operand (XEXP (y, 0), 0));
regy2 = force_reg (Pmode, force_operand (XEXP (y, 1), 0));
regx1 = force_reg (Pmode, gen_rtx (GET_CODE (y), Pmode, regx1, regy2));
return force_reg (Pmode, gen_rtx (PLUS, Pmode, regx1, regy1));
}
}
if (flag_pic)