rx.h (FUNCTION_BOUNDARY): Adjust for RX100/200 4-byte cache lines.

* 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
This commit is contained in:
DJ Delorie 2014-06-11 17:06:31 -04:00 committed by DJ Delorie
parent 1704a72b46
commit 1cf1574dc9
3 changed files with 14 additions and 5 deletions

View 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>

View 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);
}
@ -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

View File

@ -142,7 +142,7 @@
/* 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