* cse.c (canon_hash): Never reject hard regs in CCmode.

From-SVN: r25623
This commit is contained in:
Richard Henderson 1999-03-06 18:00:27 -08:00 committed by Richard Henderson
parent fc095971f1
commit 9a794e5054
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,7 @@
Sun Mar 7 01:58:47 1999 Richard Henderson <rth@cygnus.com>
* cse.c (canon_hash): Never reject hard regs in CCmode.
Sun Mar 7 01:15:04 PST 1999 Jeff Law (law@cygnus.com)
* version.c: Bump for snapshot.

View File

@ -2009,7 +2009,12 @@ canon_hash (x, mode)
/* On some machines, we can't record any non-fixed hard register,
because extending its life will cause reload problems. We
consider ap, fp, and sp to be fixed for this purpose.
consider ap, fp, and sp to be fixed for this purpose.
We also consider CCmode registers to be fixed for this purpose;
failure to do so leads to failure to simplify 0<100 type of
conditionals.
On all machines, we can't record any global registers. */
if (regno < FIRST_PSEUDO_REGISTER
@ -2019,7 +2024,8 @@ canon_hash (x, mode)
&& regno != FRAME_POINTER_REGNUM
&& regno != HARD_FRAME_POINTER_REGNUM
&& regno != ARG_POINTER_REGNUM
&& regno != STACK_POINTER_REGNUM)))
&& regno != STACK_POINTER_REGNUM
&& GET_MODE_CLASS (GET_MODE (x)) != MODE_CC)))
{
do_not_record = 1;
return 0;