mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-19 18:20:56 +08:00
alpha.c (alphaev5_insn_pipe): Abort on default case.
* alpha.c (alphaev5_insn_pipe): Abort on default case. (alphaev5_next_group): Swallow CLOBBERs and USEs. From-SVN: r22373
This commit is contained in:
parent
704e23f0d4
commit
2c01018fc8
@ -1,3 +1,10 @@
|
||||
Thu Sep 10 00:03:34 1998 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* alpha.c (alphaev5_insn_pipe): Abort on default case.
|
||||
(alphaev5_next_group): Swallow CLOBBERs and USEs.
|
||||
|
||||
* c-tree.h (warn_long_long): Declare it.
|
||||
|
||||
Wed Sep 9 23:31:36 1998 (Stephen L Moshier) <moshier@world.std.com>
|
||||
|
||||
* emit-rtl.c (gen_lowpart_common): Disable optimization of
|
||||
|
@ -4327,8 +4327,10 @@ alphaev5_insn_pipe (insn)
|
||||
|
||||
case TYPE_FMUL:
|
||||
return EV5_FM;
|
||||
|
||||
default:
|
||||
abort();
|
||||
}
|
||||
abort();
|
||||
}
|
||||
|
||||
/* IN_USE is a mask of the slots currently filled within the
|
||||
@ -4347,13 +4349,14 @@ alphaev5_next_group (insn, pin_use, plen)
|
||||
|
||||
len = in_use = 0;
|
||||
|
||||
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i')
|
||||
goto next;
|
||||
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i'
|
||||
|| GET_CODE (PATTERN (insn)) == CLOBBER
|
||||
|| GET_CODE (PATTERN (insn)) == USE)
|
||||
goto next_and_done;
|
||||
|
||||
do
|
||||
while (1)
|
||||
{
|
||||
enum alphaev5_pipe pipe;
|
||||
rtx prev;
|
||||
|
||||
pipe = alphaev5_insn_pipe (insn);
|
||||
switch (pipe)
|
||||
@ -4370,7 +4373,7 @@ alphaev5_next_group (insn, pin_use, plen)
|
||||
len = -1;
|
||||
else
|
||||
len = get_attr_length (insn);
|
||||
goto next;
|
||||
goto next_and_done;
|
||||
|
||||
/* ??? Most of the places below, we would like to abort, as
|
||||
it would indicate an error either in Haifa, or in the
|
||||
@ -4439,28 +4442,29 @@ alphaev5_next_group (insn, pin_use, plen)
|
||||
/* ??? If this is predicted not-taken, slotting continues, except
|
||||
that no more IBR, FBR, or JSR insns may be slotted. */
|
||||
if (GET_CODE (insn) == JUMP_INSN)
|
||||
goto next;
|
||||
goto next_and_done;
|
||||
|
||||
next:
|
||||
insn = next_nonnote_insn (insn);
|
||||
|
||||
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i')
|
||||
if (!insn || GET_RTX_CLASS (GET_CODE (insn)) != 'i')
|
||||
goto done;
|
||||
|
||||
/* Let Haifa tell us where it thinks insn group boundaries are. */
|
||||
if (GET_MODE (insn) == TImode)
|
||||
goto done;
|
||||
|
||||
if (GET_CODE (insn) == CLOBBER || GET_CODE (insn) == USE)
|
||||
goto next;
|
||||
}
|
||||
while (insn);
|
||||
|
||||
next_and_done:
|
||||
insn = next_nonnote_insn (insn);
|
||||
|
||||
done:
|
||||
*plen = len;
|
||||
*pin_use = in_use;
|
||||
return insn;
|
||||
|
||||
next:
|
||||
insn = next_nonnote_insn (insn);
|
||||
goto done;
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
x
Reference in New Issue
Block a user