Commit 59e748dc by Richard Stallman

*** empty log message ***

From-SVN: r1166
parent 8129e7a4
...@@ -438,25 +438,6 @@ large_int (op, mode) ...@@ -438,25 +438,6 @@ large_int (op, mode)
return TRUE; return TRUE;
} }
/* Return truth value of whether OP is an integer which can be loaded
with an lui instruction. */
int
lui_int (op, mode)
rtx op;
enum machine_mode mode;
{
long value;
if (GET_CODE (op) != CONST_INT)
return FALSE;
if ((value & 0x0000ffff) == 0) /* lui reg,value>>16 */
return TRUE;
return FALSE;
}
/* Return truth value of whether OP is a register or the constant 0. */ /* Return truth value of whether OP is a register or the constant 0. */
int int
...@@ -3564,71 +3545,6 @@ mips_output_lineno (stream, line) ...@@ -3564,71 +3545,6 @@ mips_output_lineno (stream, line)
} }
/* If defined, a C statement to be executed just prior to the
output of assembler code for INSN, to modify the extracted
operands so they will be output differently.
Here the argument OPVEC is the vector containing the operands
extracted from INSN, and NOPERANDS is the number of elements of
the vector which contain meaningful data for this insn. The
contents of this vector are what will be used to convert the
insn template into assembler code, so you can change the
assembler output by changing the contents of the vector.
We use it to check if the current insn needs a nop in front of it
because of load delays, and also to update the delay slot
statistics. */
void
final_prescan_insn (insn, opvec, noperands)
rtx insn;
rtx opvec[];
int noperands;
{
if (dslots_number_nops > 0)
{
enum machine_mode mode = GET_MODE (mips_load_reg);
rtx pattern = PATTERN (insn);
int length = get_attr_length (insn);
/* If this operand is really safe to fill the delay slot, such as an
AND with a large constant integer as operand[2], mark the delay
slot filled. */
if (get_attr_safe (insn) == SAFE_YES && length > 1)
dslots_load_filled++;
/* Do we need to emit a NOP? */
else if (length == 0
|| (mips_load_reg != (rtx)0 && reg_mentioned_p (mips_load_reg, pattern))
|| (mips_load_reg2 != (rtx)0 && reg_mentioned_p (mips_load_reg2, pattern))
|| (mips_load_reg3 != (rtx)0 && reg_mentioned_p (mips_load_reg3, pattern))
|| (mips_load_reg4 != (rtx)0 && reg_mentioned_p (mips_load_reg4, pattern)))
fputs ((set_noreorder) ? "\tnop\n" : "\t#nop\n", asm_out_file);
else
dslots_load_filled++;
while (--dslots_number_nops > 0)
fputs ((set_noreorder) ? "\tnop\n" : "\t#nop\n", asm_out_file);
mips_load_reg = (rtx)0;
mips_load_reg2 = (rtx)0;
mips_load_reg3 = (rtx)0;
mips_load_reg4 = (rtx)0;
if (set_noreorder && --set_noreorder == 0)
fputs ("\t.set\treorder\n", asm_out_file);
}
if (TARGET_STATS)
{
enum rtx_code code = GET_CODE (insn);
if (code == JUMP_INSN || code == CALL_INSN)
dslots_jump_total++;
}
}
/* Output at beginning of assembler file. /* Output at beginning of assembler file.
If we are optimizing to use the global pointer, create a temporary If we are optimizing to use the global pointer, create a temporary
file to hold all of the text stuff, and write it out to the end. file to hold all of the text stuff, and write it out to the end.
...@@ -4451,3 +4367,4 @@ null_epilogue () ...@@ -4451,3 +4367,4 @@ null_epilogue ()
return (compute_frame_size (get_frame_size ())) == 0; return (compute_frame_size (get_frame_size ())) == 0;
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment