Commit 30864e14 by Richard Henderson Committed by Richard Henderson

alpha.c (alpha_align_insns): Use align_functions, not FUNCTION_BOUNDARY.

        * config/alpha/alpha.c (alpha_align_insns): Use align_functions,
        not FUNCTION_BOUNDARY.
        * config/alpha/alpha.h (TRAMPOLINE_ALIGNMENT): New.
        * config/alpha/alpha32.h, config/alpha/vms.h: Likewise.
        * config/alpha/unicosmk.h (FUNCTION_BOUNDARY): Remove.

From-SVN: r47819
parent e4171066
2001-12-09 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.c (alpha_align_insns): Use align_functions,
not FUNCTION_BOUNDARY.
* config/alpha/alpha.h (TRAMPOLINE_ALIGNMENT): New.
* config/alpha/alpha32.h, config/alpha/vms.h: Likewise.
* config/alpha/unicosmk.h (FUNCTION_BOUNDARY): Remove.
2001-12-09 Hans-Peter Nilsson <hp@bitrange.com>
* config/mmix/mmix.c (mmix_function_block_profiler,
......
......@@ -7570,8 +7570,12 @@ alpha_align_insns (insns, max_align, next_group, next_nop)
/* Let shorten branches care for assigning alignments to code labels. */
shorten_branches (insns);
align = (FUNCTION_BOUNDARY / BITS_PER_UNIT < max_align
? FUNCTION_BOUNDARY / BITS_PER_UNIT : max_align);
if (align_functions < 4)
align = 4;
else if (align_functions < max_align)
align = align_functions;
else
align = max_align;
ofs = prev_in_use = 0;
i = insns;
......
......@@ -1317,8 +1317,7 @@ extern struct alpha_compare alpha_compare;
The trampoline should set the static chain pointer to value placed
into the trampoline and should branch to the specified routine.
Note that $27 has been set to the address of the trampoline, so we can
use it for addressability of the two data items. Trampolines are always
aligned to FUNCTION_BOUNDARY, which is 64 bits. */
use it for addressability of the two data items. */
#define TRAMPOLINE_TEMPLATE(FILE) \
do { \
......@@ -1338,6 +1337,10 @@ do { \
#define TRAMPOLINE_SIZE 32
/* The alignment of a trampoline, in bits. */
#define TRAMPOLINE_ALIGNMENT 64
/* Emit RTL insns to initialize the variable parts of a trampoline.
FNADDR is an RTX for the address of the function's pure code.
CXT is an RTX for the static chain value for the function. */
......
......@@ -71,6 +71,11 @@ Boston, MA 02111-1307, USA. */
#undef TRAMPOLINE_SIZE
#define TRAMPOLINE_SIZE 24
/* The alignment of a trampoline, in bits. */
#undef TRAMPOLINE_ALIGNMENT
#define TRAMPOLINE_ALIGNMENT 32
/* Emit RTL insns to initialize the variable parts of a trampoline.
FNADDR is an RTX for the address of the function's pure code.
CXT is an RTX for the static chain value for the function. */
......
......@@ -73,12 +73,6 @@ Boston, MA 02111-1307, USA. */
#undef STRUCTURE_SIZE_BOUNDARY
#define STRUCTURE_SIZE_BOUNDARY 64
/* Allocation boundary (in *bits*) for the code of a function. Functions
should be cache-aligned on the T3E. */
#undef FUNCTION_BOUNDARY
#define FUNCTION_BOUNDARY 256
/* No data type wants to be aligned rounder than this. */
#undef BIGGEST_ALIGNMENT
......
......@@ -351,8 +351,7 @@ do { \
The trampoline should set the static chain pointer to value placed
into the trampoline and should branch to the specified routine.
Note that $27 has been set to the address of the trampoline, so we can
use it for addressability of the two data items. Trampolines are always
aligned to FUNCTION_BOUNDARY, which is 64 bits. */
use it for addressability of the two data items. */
#undef TRAMPOLINE_TEMPLATE
#define TRAMPOLINE_TEMPLATE(FILE) \
......@@ -367,6 +366,11 @@ do { \
#undef TRAMPOLINE_SIZE
#define TRAMPOLINE_SIZE 32
/* The alignment of a trampoline, in bits. */
#undef TRAMPOLINE_ALIGNMENT
#define TRAMPOLINE_ALIGNMENT 64
/* Emit RTL insns to initialize the variable parts of a trampoline.
FNADDR is an RTX for the address of the function's pure code.
CXT is an RTX for the static chain value for the function. */
......
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