]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
rx.h (FUNCTION_BOUNDARY): Adjust for RX100/200 4-byte cache lines.
authorDJ Delorie <dj@redhat.com>
Wed, 11 Jun 2014 21:06:31 +0000 (17:06 -0400)
committerDJ Delorie <dj@gcc.gnu.org>
Wed, 11 Jun 2014 21:06:31 +0000 (17:06 -0400)
* config/rx/rx.h (FUNCTION_BOUNDARY): Adjust for RX100/200 4-byte
cache lines.
* config/rx/rx.c (rx_option_override): Likewise.
(rx_align_for_label): Likewise.

From-SVN: r211481

gcc/ChangeLog
gcc/config/rx/rx.c
gcc/config/rx/rx.h

index ec2ee1d61d155985d2f20fc99fd5565336cb587d..f394ca46798b35531177d90bb6ff838d815c83a2 100644 (file)
@@ -1,5 +1,10 @@
 2014-06-11  DJ Delorie  <dj@redhat.com>
 
+       * config/rx/rx.h (FUNCTION_BOUNDARY): Adjust for RX100/200 4-byte
+       cache lines.
+       * config/rx/rx.c (rx_option_override): Likewise.
+       (rx_align_for_label): Likewise.
+
        * config/rx/rx.c (rx_max_skip_for_label): Don't skip anything if -Os.
 
 2014-06-11  Maciej W. Rozycki  <macro@codesourcery.com>
index d04e65208b6fe82db79073eb424f152a08c2bd60..2a525f33580482fff7a98f9afc3178a86456719e 100644 (file)
@@ -2792,11 +2792,11 @@ rx_option_override (void)
   rx_override_options_after_change ();
 
   if (align_jumps == 0 && ! optimize_size)
-    align_jumps = 3;
+    align_jumps = ((rx_cpu_type == RX100 || rx_cpu_type == RX200) ? 2 : 3);
   if (align_loops == 0 && ! optimize_size)
-    align_loops = 3;
+    align_loops = ((rx_cpu_type == RX100 || rx_cpu_type == RX200) ? 2 : 3);
   if (align_labels == 0 && ! optimize_size)
-    align_labels = 3;
+    align_labels = ((rx_cpu_type == RX100 || rx_cpu_type == RX200) ? 2 : 3);
 }
 
 \f
@@ -3201,7 +3201,11 @@ rx_align_for_label (rtx lab, int uses_threshold)
   if (LABEL_P (lab) && LABEL_NUSES (lab) < uses_threshold)
     return 0;
 
-  return optimize_size ? 1 : 3;
+  if (optimize_size)
+    return 0;
+  if (rx_cpu_type == RX100 || rx_cpu_type == RX200)
+    return 2;
+  return 2;
 }
 
 static int
index d99b19ad202b8b55cb6826367b1965deabbb13eb..209518c6d3808ed941721b67c7591f3817472969 100644 (file)
 
 /* RX load/store instructions can handle unaligned addresses.  */
 #define STRICT_ALIGNMENT               0
-#define FUNCTION_BOUNDARY              8
+#define FUNCTION_BOUNDARY              ((rx_cpu_type == RX100 || rx_cpu_type == RX200) ? 4 : 8)
 #define BIGGEST_ALIGNMENT              32
 #define STACK_BOUNDARY                         32
 #define PARM_BOUNDARY                  8