From: Bernardo Innocenti Date: Tue, 1 Jun 2004 12:56:49 +0000 (+0200) Subject: re PR target/14018 (m68k backend: -malign-loops/-malign-jumps broken) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=225d221a9d82172d403aa068217dc67ca0a3f249;p=gcc.git re PR target/14018 (m68k backend: -malign-loops/-malign-jumps broken) PR target/14018 * config/m68k/m68k.c (m68k_align_loops_string, m68k_align_jumps_string, m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps, m68k_align_funcs): Remove. (override_options): Remove code to handle -malign-* options. * config/m68k/m68k.h (TARGET_OPTIONS): Remove -malign-* options. (FUNCTION_BOUNDARY, LOOP_ALIGN, LOOP_ALIGN_AFTER_BARRIER): Remove. (m68k_align_loops_string, m68k_align_jumps_string, m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps, m68k_align_funcs): Remove definitions. From-SVN: r82546 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c78dc4c4706..aa5a1a9df14 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2004-06-01 Bernardo Innocenti + + PR target/14018 + * config/m68k/m68k.c (m68k_align_loops_string, m68k_align_jumps_string, + m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps, + m68k_align_funcs): Remove. + (override_options): Remove code to handle -malign-* options. + * config/m68k/m68k.h (TARGET_OPTIONS): Remove -malign-* options. + (FUNCTION_BOUNDARY, LOOP_ALIGN, LOOP_ALIGN_AFTER_BARRIER): Remove. + (m68k_align_loops_string, m68k_align_jumps_string, + m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps, + m68k_align_funcs): Remove definitions. + 2004-06-01 Paul Eggert PR target/15626 @@ -5,7 +18,7 @@ by the Sun linker in conjunction with the Sun assembler. (sparc-sun-solaris2.7): Update revision info for Sun patch 106950. -2004-05-19 Jeff Law +2004-06-01 Jeff Law * stmt.c (expand_decl): Be more selective about calling mark_reg_pointer. diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c index 17436907bc7..1aebe96c548 100644 --- a/gcc/config/m68k/m68k.c +++ b/gcc/config/m68k/m68k.c @@ -123,23 +123,9 @@ static int const_int_cost (rtx); static bool m68k_rtx_costs (rtx, int, int, int *); -/* Alignment to use for loops and jumps */ -/* Specify power of two alignment used for loops. */ -const char *m68k_align_loops_string; -/* Specify power of two alignment used for non-loop jumps. */ -const char *m68k_align_jumps_string; -/* Specify power of two alignment used for functions. */ -const char *m68k_align_funcs_string; /* Specify the identification number of the library being built */ const char *m68k_library_id_string; -/* Specify power of two alignment used for loops. */ -int m68k_align_loops; -/* Specify power of two alignment used for non-loop jumps. */ -int m68k_align_jumps; -/* Specify power of two alignment used for functions. */ -int m68k_align_funcs; - /* Nonzero if the last compare/test insn had FP operands. The sCC expanders peek at this to determine what to do for the 68060, which has no fsCC instructions. */ @@ -221,22 +207,6 @@ struct gcc_target targetm = TARGET_INITIALIZER; void override_options (void) { - int def_align; - int i; - - def_align = 1; - - /* Validate -malign-loops= value, or provide default */ - m68k_align_loops = def_align; - if (m68k_align_loops_string) - { - i = atoi (m68k_align_loops_string); - if (i < 1 || i > MAX_CODE_ALIGN) - error ("-malign-loops=%d is not between 1 and %d", i, MAX_CODE_ALIGN); - else - m68k_align_loops = i; - } - /* Library identification */ if (m68k_library_id_string) { @@ -269,29 +239,6 @@ override_options (void) if (TARGET_SEP_DATA || TARGET_ID_SHARED_LIBRARY) flag_pic = 2; - /* Validate -malign-jumps= value, or provide default */ - m68k_align_jumps = def_align; - if (m68k_align_jumps_string) - { - i = atoi (m68k_align_jumps_string); - if (i < 1 || i > MAX_CODE_ALIGN) - error ("-malign-jumps=%d is not between 1 and %d", i, MAX_CODE_ALIGN); - else - m68k_align_jumps = i; - } - - /* Validate -malign-functions= value, or provide default */ - m68k_align_funcs = def_align; - if (m68k_align_funcs_string) - { - i = atoi (m68k_align_funcs_string); - if (i < 1 || i > MAX_CODE_ALIGN) - error ("-malign-functions=%d is not between 1 and %d", - i, MAX_CODE_ALIGN); - else - m68k_align_funcs = i; - } - /* -fPIC uses 32-bit pc-relative displacements, which don't exist until the 68020. */ if (!TARGET_68020 && !TARGET_COLDFIRE && (flag_pic == 2)) diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index c7cc76b7d45..5b700938298 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -183,7 +183,7 @@ extern int target_flags; #define MASK_SHORT (1<<12) #define TARGET_SHORT (target_flags & MASK_SHORT) -/* Align ints to a word boundary. This breaks compatibility with the +/* Align ints to a word boundary. This breaks compatibility with the published ABI's for structures containing ints, but produces faster code on cpus with 32-bit busses (020, 030, 040, 060, CPU32+, ColdFire). It's required for ColdFire cpus without a misalignment module. */ @@ -355,12 +355,7 @@ extern int target_flags; option if the fixed part matches. The actual option name is made by appending `-m' to the specified name. */ #define TARGET_OPTIONS \ -{ { "align-loops=", &m68k_align_loops_string, \ - N_("Loop code aligned to this power of 2"), 0}, \ - { "align-jumps=", &m68k_align_jumps_string, \ - N_("Jump targets are aligned to this power of 2"), 0}, \ - { "align-functions=", &m68k_align_funcs_string, \ - N_("Function starts are aligned to this power of 2"), 0}, \ +{ \ { "shared-library-id=", &m68k_library_id_string, \ N_("ID of shared library to build"), 0}, \ SUBTARGET_OPTIONS \ @@ -420,7 +415,7 @@ extern int target_flags; #define STACK_BOUNDARY 16 /* Allocation boundary (in *bits*) for the code of a function. */ -#define FUNCTION_BOUNDARY (1 << (m68k_align_funcs + 3)) +#define FUNCTION_BOUNDARY 16 /* Alignment of field after `int : 0' in a structure. */ #define EMPTY_FIELD_BOUNDARY 16 @@ -442,19 +437,13 @@ extern int target_flags; /* Maximum number of library ids we permit */ #define MAX_LIBRARY_ID 255 -/* Align loop starts for optimal branching. */ -#define LOOP_ALIGN(LABEL) (m68k_align_loops) - -/* This is how to align an instruction for optimal branching. */ -#define LABEL_ALIGN_AFTER_BARRIER(LABEL) (m68k_align_jumps) - /* Define number of bits in most basic integer type. (If undefined, default is BITS_PER_WORD). */ #define INT_TYPE_SIZE (TARGET_SHORT ? 16 : 32) /* Define these to avoid dependence on meaning of `int'. */ - + #define WCHAR_TYPE "long int" #define WCHAR_TYPE_SIZE 32 @@ -1699,13 +1688,7 @@ do { if (cc_prev_status.flags & CC_IN_68881) \ #define PRINT_OPERAND_ADDRESS(FILE, ADDR) print_operand_address (FILE, ADDR) /* Variables in m68k.c */ -extern const char *m68k_align_loops_string; -extern const char *m68k_align_jumps_string; -extern const char *m68k_align_funcs_string; extern const char *m68k_library_id_string; -extern int m68k_align_loops; -extern int m68k_align_jumps; -extern int m68k_align_funcs; extern int m68k_last_compare_had_fp_operands;