diff options
author | John David Anglin <dave@hiauly1.hia.nrc.ca> | 2002-12-12 02:44:02 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2002-12-12 02:44:02 +0000 |
commit | d6567b3adff339466b4e2f76d889624d2ee2a949 (patch) | |
tree | e5b1fdd7a7c1bd0ca9ec810f776f3162a8a5b93f /gcc/config/pa/pa.h | |
parent | 355bd14f09c16c8a468e2d578c24efdff04d1e8e (diff) | |
download | gcc-d6567b3adff339466b4e2f76d889624d2ee2a949.zip gcc-d6567b3adff339466b4e2f76d889624d2ee2a949.tar.gz gcc-d6567b3adff339466b4e2f76d889624d2ee2a949.tar.bz2 |
pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
* pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
(MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
BIGGEST_ALIGNMENT.
(PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
(FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
From-SVN: r60056
Diffstat (limited to 'gcc/config/pa/pa.h')
-rw-r--r-- | gcc/config/pa/pa.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index ebaee36..860b759 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -451,19 +451,19 @@ do { \ /* Largest alignment required for any stack parameter, in bits. Don't define this if it is equal to PARM_BOUNDARY */ -#define MAX_PARM_BOUNDARY (2 * PARM_BOUNDARY) +#define MAX_PARM_BOUNDARY BIGGEST_ALIGNMENT /* Boundary (in *bits*) on which stack pointer is always aligned; certain optimizations in combine depend on this. - GCC for the PA always rounds its stacks to a 512bit boundary, - but that happens late in the compilation process. */ -#define STACK_BOUNDARY (TARGET_64BIT ? 128 : 64) + GCC for the PA always rounds its stacks to a 8 * STACK_BOUNDARY + boundary, but that happens late in the compilation process. */ +#define STACK_BOUNDARY BIGGEST_ALIGNMENT -#define PREFERRED_STACK_BOUNDARY 512 +#define PREFERRED_STACK_BOUNDARY (8 * STACK_BOUNDARY) /* Allocation boundary (in *bits*) for the code of a function. */ -#define FUNCTION_BOUNDARY (TARGET_64BIT ? 64 : 32) +#define FUNCTION_BOUNDARY BITS_PER_WORD /* Alignment of field after `int : 0' in a structure. */ #define EMPTY_FIELD_BOUNDARY 32 @@ -474,9 +474,8 @@ do { \ /* A bit-field declared as `int' forces `int' alignment for the struct. */ #define PCC_BITFIELD_TYPE_MATTERS 1 -/* No data type wants to be aligned rounder than this. This is set - to 128 bits to allow for lock semaphores in the stack frame.*/ -#define BIGGEST_ALIGNMENT 128 +/* No data type wants to be aligned rounder than this. */ +#define BIGGEST_ALIGNMENT (2 * BITS_PER_WORD) /* Get around hp-ux assembler bug, and make strcpy of constants fast. */ #define CONSTANT_ALIGNMENT(CODE, TYPEALIGN) \ @@ -488,7 +487,6 @@ do { \ && TYPE_MODE (TREE_TYPE (TYPE)) == QImode \ && (ALIGN) < BITS_PER_WORD ? BITS_PER_WORD : (ALIGN)) - /* Set this nonzero if move instructions will actually fail to work when given unaligned data. */ #define STRICT_ALIGNMENT 1 |