Commit 4caff360 by Stephane Carrez Committed by Stephane Carrez

m68hc11.h (OPTIMIZATION_OPTIONS): Define.

	* config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Define.
	* config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
	Declare.
	* config/m68hc11/m68hc11.c (m68hc11_optimization_options): New,
	do not reorder basic blocks at the end when optimizing for size.

From-SVN: r55079
parent 1d63a28a
......@@ -7,6 +7,14 @@
2002-06-28 Stephane Carrez <stcarrez@nerim.fr>
* config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Define.
* config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
Declare.
* config/m68hc11/m68hc11.c (m68hc11_optimization_options): New,
do not reorder basic blocks at the end when optimizing for size.
2002-06-28 Stephane Carrez <stcarrez@nerim.fr>
* config/m68hc11/m68hc11.c (autoinc_mode): New function.
(m68hc11_make_autoinc_notes): New function.
(m68hc11_split_move): Be very cautious when spliting a move with
......
/* Prototypes for exported functions defined in m68hc11.c
Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@worldnet.fr)
Contributed by Stephane Carrez (stcarrez@nerim.fr)
This file is part of GNU CC.
......@@ -21,6 +21,7 @@ Boston, MA 02111-1307, USA. */
extern int m68hc11_override_options PARAMS((void));
extern int m68hc11_optimization_options PARAMS((int,int));
extern void m68hc11_conditional_register_usage PARAMS((void));
extern int hard_regno_mode_ok PARAMS((int, enum machine_mode));
......
......@@ -288,6 +288,21 @@ m68hc11_override_options ()
}
int
m68hc11_optimization_options (level, size)
int level ATTRIBUTE_UNUSED;
int size;
{
/* When optimizing for size, do not reorder basic blocks because
it duplicates some insns for speed and this results in larder code.
This reordering can still be enabled but explicitly. */
if (size)
{
flag_reorder_blocks = 0;
}
return 0;
}
void
m68hc11_conditional_register_usage ()
{
......
/* Definitions of target machine for GNU compiler.
Motorola 68HC11 and 68HC12.
Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@worldnet.fr)
Contributed by Stephane Carrez (stcarrez@nerim.fr)
This file is part of GNU CC.
......@@ -214,6 +214,10 @@ extern const char *m68hc11_soft_reg_count;
#define OVERRIDE_OPTIONS m68hc11_override_options ();
/* Define this to change the optimizations performed by default. */
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
m68hc11_optimization_options(LEVEL, SIZE)
/* Define cost parameters for a given processor variant. */
struct processor_costs {
......
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