re PR target/14018 (m68k backend: -malign-loops/-malign-jumps broken)
authorBernardo Innocenti <bernie@gcc.gnu.org>
Tue, 1 Jun 2004 12:56:49 +0000 (14:56 +0200)
committerBernardo Innocenti <bernie@gcc.gnu.org>
Tue, 1 Jun 2004 12:56:49 +0000 (14:56 +0200)
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

gcc/ChangeLog
gcc/config/m68k/m68k.c
gcc/config/m68k/m68k.h

index c78dc4c..aa5a1a9 100644 (file)
@@ -1,3 +1,16 @@
+2004-06-01  Bernardo Innocenti  <bernie@develer.com>
+
+       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  <eggert@cs.ucla.edu>
 
        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 <law@redhat.com>
+2004-06-01  Jeff Law  <law@redhat.com>
 
         * stmt.c (expand_decl): Be more selective about calling
         mark_reg_pointer.
index 1743690..1aebe96 100644 (file)
@@ -123,23 +123,9 @@ static int const_int_cost (rtx);
 static bool m68k_rtx_costs (rtx, int, int, int *);
 \f
 
-/* 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))
index c7cc76b..5b70093 100644 (file)
@@ -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
 \f
@@ -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;
 
 \f