frv.c (frv_rtx_costs): Update forward declaration.

* frv.c (frv_rtx_costs): Update forward declaration.
	* spu.c (spu_rtx_costs): Likewise.
	* pdp11.c: Include df.h
	(pdp11_output_function_epilogue): Use df_set_regs_ever_live.
	* m68hc11.c (m68hc11_gen_highpart): Fix call of gen_rtx_SUBREG.
	(m68hc11_rtx_costs_1): Fix call of rtx_cost.
	* iq2000.c (iq2000_address_cost): Add speed argument.
	(iq2000_rtx_costs): Likewise.
	* mn10300.c (mn10300_address_cost_1): Remove speed argument;
	update call of mn10300_address_cost.
	* mcore.c: Include df.h
	(mcore_rtx_costs): Update prototype.
	* score3.c: Include df.h
	(score3_rtx_costs): Remove speed argument.
	* score7.c: Include df.h
	(score7_address_cost): Remove speed argument.
	* score-protos.h (score_address_cost): Update prototype.
	* score.c: Include df.h
	(score_rtx_costs): Update call of costs functions.
	* v850.c (v850_rtx_costs): Add bool argument.

From-SVN: r139843
This commit is contained in:
Jan Hubicka 2008-08-31 22:49:42 +02:00 committed by Jan Hubicka
parent cd6b7bc60d
commit 899cc0f433
14 changed files with 49 additions and 23 deletions

View File

@ -1,3 +1,26 @@
2008-08-31 Jan Hubicka <jh@suse.cz>
* frv.c (frv_rtx_costs): Update forward declaration.
* spu.c (spu_rtx_costs): Likewise.
* pdp11.c: Include df.h
(pdp11_output_function_epilogue): Use df_set_regs_ever_live.
* m68hc11.c (m68hc11_gen_highpart): Fix call of gen_rtx_SUBREG.
(m68hc11_rtx_costs_1): Fix call of rtx_cost.
* iq2000.c (iq2000_address_cost): Add speed argument.
(iq2000_rtx_costs): Likewise.
* mn10300.c (mn10300_address_cost_1): Remove speed argument;
update call of mn10300_address_cost.
* mcore.c: Include df.h
(mcore_rtx_costs): Update prototype.
* score3.c: Include df.h
(score3_rtx_costs): Remove speed argument.
* score7.c: Include df.h
(score7_address_cost): Remove speed argument.
* score-protos.h (score_address_cost): Update prototype.
* score.c: Include df.h
(score_rtx_costs): Update call of costs functions.
* v850.c (v850_rtx_costs): Add bool argument.
2008-08-31 Hans-Peter Nilsson <hp@axis.com>
* config/cris/cris.c (cris_rtx_costs): Correct call to rtx_costs.

View File

@ -366,7 +366,7 @@ static void frv_setup_incoming_varargs (CUMULATIVE_ARGS *,
tree, int *, int);
static rtx frv_expand_builtin_saveregs (void);
static void frv_expand_builtin_va_start (tree, rtx);
static bool frv_rtx_costs (rtx, int, int, int*);
static bool frv_rtx_costs (rtx, int, int, int*, bool);
static void frv_asm_out_constructor (rtx, int);
static void frv_asm_out_destructor (rtx, int);
static bool frv_function_symbol_referenced_p (rtx);

View File

@ -744,7 +744,7 @@ iq2000_move_1word (rtx operands[], rtx insn, int unsignedp)
/* Provide the costs of an addressing mode that contains ADDR. */
static int
iq2000_address_cost (rtx addr, bool speec ATTRIBUTE_UNUSED)
iq2000_address_cost (rtx addr, bool speed)
{
switch (GET_CODE (addr))
{
@ -795,7 +795,7 @@ iq2000_address_cost (rtx addr, bool speec ATTRIBUTE_UNUSED)
case LABEL_REF:
case HIGH:
case LO_SUM:
return iq2000_address_cost (plus1) + 1;
return iq2000_address_cost (plus1, speed) + 1;
default:
break;
@ -3203,7 +3203,8 @@ print_operand (FILE *file, rtx op, int letter)
}
static bool
iq2000_rtx_costs (rtx x, int code, int outer_code ATTRIBUTE_UNUSED, int * total, bool speed)
iq2000_rtx_costs (rtx x, int code, int outer_code ATTRIBUTE_UNUSED, int * total,
bool speed ATTRIBUTE_UNUSED)
{
enum machine_mode mode = GET_MODE (x);

View File

@ -1960,7 +1960,7 @@ m68hc11_gen_highpart (enum machine_mode mode, rtx x)
switch (GET_CODE (x))
{
case SUBREG:
return gen_rtx_SUBREG (mode, XEXP (x, 0), XEXP (x, 1));
return gen_rtx_SUBREG (mode, XEXP (x, 0), XINT (x, 1));
case REG:
if (REGNO (x) < FIRST_PSEUDO_REGISTER)
return gen_rtx_REG (mode, REGNO (x));
@ -5335,7 +5335,8 @@ m68hc11_rtx_costs_1 (rtx x, enum rtx_code code,
+ rtx_cost (XEXP (XEXP (x, 0), 0), code, !optimize_size)
+ rtx_cost (XEXP (XEXP (x, 1), 0), code, !optimize_size);
total = rtx_cost (XEXP (x, 0), code) + rtx_cost (XEXP (x, 1), code);
total = rtx_cost (XEXP (x, 0), code, !optimize_size)
+ rtx_cost (XEXP (x, 1), code, !optimize_size);
switch (mode)
{
case QImode:

View File

@ -1067,18 +1067,15 @@ extern enum reg_class m68hc11_index_reg_class;
local-alloc.c. */
/* Internal macro, return 1 if REGNO is a valid base register. */
#define REG_VALID_P(REGNO) ((REGNO) >= 0)
extern unsigned char m68hc11_reg_valid_for_base[FIRST_PSEUDO_REGISTER];
#define REG_VALID_FOR_BASE_P(REGNO) \
(REG_VALID_P (REGNO) && (REGNO) < FIRST_PSEUDO_REGISTER \
((REGNO) < FIRST_PSEUDO_REGISTER \
&& m68hc11_reg_valid_for_base[REGNO])
/* Internal macro, return 1 if REGNO is a valid index register. */
extern unsigned char m68hc11_reg_valid_for_index[FIRST_PSEUDO_REGISTER];
#define REG_VALID_FOR_INDEX_P(REGNO) \
(REG_VALID_P (REGNO) >= 0 && (REGNO) < FIRST_PSEUDO_REGISTER \
((REGNO) < FIRST_PSEUDO_REGISTER \
&& m68hc11_reg_valid_for_index[REGNO])
/* Internal macro, the nonstrict definition for REGNO_OK_FOR_BASE_P. */

View File

@ -44,6 +44,7 @@
#include "toplev.h"
#include "target.h"
#include "target-def.h"
#include "df.h"
/* Maximum size we are allowed to grow the stack in a single operation.
If we want more, we must do it in increments of at most this size.
@ -143,7 +144,7 @@ static const char *mcore_strip_name_encoding (const char *);
static int mcore_const_costs (rtx, RTX_CODE);
static int mcore_and_cost (rtx);
static int mcore_ior_cost (rtx);
static bool mcore_rtx_costs (rtx, int, int, int *);
static bool mcore_rtx_costs (rtx, int, int, int *, bool);
static void mcore_external_libcall (rtx);
static bool mcore_return_in_memory (const_tree, const_tree);
static int mcore_arg_partial_bytes (CUMULATIVE_ARGS *,

View File

@ -1942,7 +1942,7 @@ legitimate_address_p (enum machine_mode mode, rtx x, int strict)
}
static int
mn10300_address_cost_1 (rtx x, int *unsig, bool speed ATTRIBUTE_UNUSED)
mn10300_address_cost_1 (rtx x, int *unsig)
{
switch (GET_CODE (x))
{
@ -1979,7 +1979,7 @@ mn10300_address_cost_1 (rtx x, int *unsig, bool speed ATTRIBUTE_UNUSED)
case EXPR_LIST:
case SUBREG:
case MEM:
return mn10300_address_cost (XEXP (x, 0));
return mn10300_address_cost (XEXP (x, 0), !optimize_size);
case ZERO_EXTEND:
*unsig = 1;

View File

@ -40,6 +40,7 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "target.h"
#include "target-def.h"
#include "df.h"
/*
#define FPU_REG_P(X) ((X)>=8 && (X)<14)
@ -376,7 +377,7 @@ pdp11_output_function_epilogue (FILE *stream, HOST_WIDE_INT size)
if (frame_pointer_needed)
{
/* hope this is safe - m68k does it also .... */
df_regs_ever_live_p (FRAME_POINTER_REGNUM) = 0;
df_set_regs_ever_live (FRAME_POINTER_REGNUM, false);
for (i =7, j = 0 ; i >= 0 ; i--)
if (df_regs_ever_live_p (i) && ! call_used_regs[i])

View File

@ -39,7 +39,7 @@ extern const char * score_move (rtx *ops);
extern bool score_unaligned_load (rtx* ops);
extern bool score_unaligned_store (rtx* ops);
extern bool score_block_move (rtx* ops);
extern int score_address_cost (rtx addr);
extern int score_address_cost (rtx addr, bool speed);
extern rtx score_function_arg (const CUMULATIVE_ARGS *cum,
enum machine_mode mode,
tree type, int named);

View File

@ -49,6 +49,7 @@
#include "langhooks.h"
#include "score7.h"
#include "score3.h"
#include "df.h"
#undef TARGET_ASM_FILE_START
#define TARGET_ASM_FILE_START score_asm_file_start
@ -573,9 +574,9 @@ score_rtx_costs (rtx x, int code, int outer_code, int *total,
bool speed ATTRIBUTE_UNUSED)
{
if (TARGET_SCORE5 || TARGET_SCORE5U || TARGET_SCORE7 || TARGET_SCORE7D)
return score7_rtx_costs (x, code, outer_code, total);
return score7_rtx_costs (x, code, outer_code, total, speed);
else if (TARGET_SCORE3)
return score3_rtx_costs (x, code, outer_code, total);
return score3_rtx_costs (x, code, outer_code, total, speed);
gcc_unreachable ();
}

View File

@ -49,6 +49,7 @@
#include "langhooks.h"
#include "cfglayout.h"
#include "score3.h"
#include "df.h"
#define BITSET_P(VALUE, BIT) (((VALUE) & (1L << (BIT))) != 0)
#define INS_BUF_SZ 128
@ -1155,7 +1156,7 @@ score3_rtx_costs (rtx x, int code, int outer_code, int *total,
/* Implement TARGET_ADDRESS_COST macro. */
int
score3_address_cost (rtx addr, bool speed ATTRIBUTE_UNUSED)
score3_address_cost (rtx addr)
{
return score3_address_insns (addr, SImode);
}

View File

@ -49,6 +49,7 @@
#include "langhooks.h"
#include "cfglayout.h"
#include "score7.h"
#include "df.h"
#define BITSET_P(VALUE, BIT) (((VALUE) & (1L << (BIT))) != 0)
#define INS_BUF_SZ 128
@ -1146,8 +1147,7 @@ score7_rtx_costs (rtx x, int code, int outer_code, int *total,
/* Implement TARGET_ADDRESS_COST macro. */
int
score7_address_cost (rtx addr,
bool speed ATTRIBUTE_UNUSED)
score7_address_cost (rtx addr)
{
return score7_address_insns (addr, SImode);
}

View File

@ -126,7 +126,7 @@ static int mem_is_padded_component_ref (rtx x);
static bool spu_assemble_integer (rtx x, unsigned int size, int aligned_p);
static void spu_asm_globalize_label (FILE * file, const char *name);
static unsigned char spu_rtx_costs (rtx x, int code, int outer_code,
int *total);
int *total, bool speed);
static unsigned char spu_function_ok_for_sibcall (tree decl, tree exp);
static void spu_init_libfuncs (void);
static bool spu_return_in_memory (const_tree type, const_tree fntype);

View File

@ -53,7 +53,7 @@ static bool v850_handle_option (size_t, const char *, int);
static void const_double_split (rtx, HOST_WIDE_INT *, HOST_WIDE_INT *);
static int const_costs_int (HOST_WIDE_INT, int);
static int const_costs (rtx, enum rtx_code);
static bool v850_rtx_costs (rtx, int, int, int *);
static bool v850_rtx_costs (rtx, int, int, int *, bool);
static void substitute_ep_register (rtx, rtx, int, int, rtx *, rtx *);
static void v850_reorg (void);
static int ep_memory_offset (enum machine_mode, int);