diff options
author | Nick Clifton <nickc@cygnus.com> | 1999-10-28 09:28:04 +0000 |
---|---|---|
committer | Nick Clifton <nickc@gcc.gnu.org> | 1999-10-28 09:28:04 +0000 |
commit | 723ae7c17d94b54f886c7f3cb212b8256fc8bb5f (patch) | |
tree | 5c38175fa17d41f22c3dc3d15353610f37e97540 | |
parent | 566047c21e297eef4295a3af9892a506bcab4754 (diff) | |
download | gcc-723ae7c17d94b54f886c7f3cb212b8256fc8bb5f.zip gcc-723ae7c17d94b54f886c7f3cb212b8256fc8bb5f.tar.gz gcc-723ae7c17d94b54f886c7f3cb212b8256fc8bb5f.tar.bz2 |
Allow netbsd target to also set structure size boundary
From-SVN: r30234
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 2 | ||||
-rw-r--r-- | gcc/config/arm/arm.h | 20 | ||||
-rw-r--r-- | gcc/config/arm/netbsd.h | 4 |
4 files changed, 25 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fefd38d..f0e2727 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +Thu Oct 28 10:00:48 1999 Nick Clifton <nickc@cygnus.com> + + * config/arm/arm.c: Initialise arm_structure_size_boundary to + DEFAULT_STRUCTURE_SIZE_BOUNDARY. + * config/arm/arm.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): Define + to the value 32 if it has not already been defined. + * config/arm/netbsd.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): + Override definition in arm.h with a value of 8. + Thu Oct 28 03:12:02 1999 David Starner <dstarner98@aasaa.ofe.org> * c-pragma.c (push_alignment): Don't check the return value diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 01f4175..1bc1c0c 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -96,7 +96,7 @@ const char * target_fp_name = NULL; /* Used to parse -mstructure_size_boundary command line option. */ const char * structure_size_string = NULL; -int arm_structure_size_boundary = 32; /* Used to be 8 */ +int arm_structure_size_boundary = DEFAULT_STRUCTURE_SIZE_BOUNDARY; /* Bit values used to identify processor capabilities. */ #define FL_CO_PROC (1 << 0) /* Has external co-processor bus */ diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index d64f590..0c8c697 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -615,15 +615,21 @@ extern int arm_is_6_or_7; (TREE_CODE (EXP) == STRING_CST \ && (ALIGN) < BITS_PER_WORD ? BITS_PER_WORD : (ALIGN)) -/* Setting this to 32 produces more efficient code, but the value set in - previous versions of this toolchain was 8, which produces more compact - structures. The command line option -mstructure_size_boundary=<n> can - be used to change this value, for compatability with the ARM SDK however - the value should be left at 32. ARM SDT Reference Manual (ARM DUI 0020D) - page 2-20 says "Structures are aligned on word boundaries". */ -#ifndef STRUCTURE_SIZE_BOUNDARY +/* Setting STRUCTURE_SIZE_BOUNDARY to 32 produces more efficient code, but the + value set in previous versions of this toolchain was 8, which produces more + compact structures. The command line option -mstructure_size_boundary=<n> + can be used to change this value. For compatability with the ARM SDK + however the value should be left at 32. ARM SDT Reference Manual (ARM DUI + 0020D) page 2-20 says "Structures are aligned on word boundaries". */ #define STRUCTURE_SIZE_BOUNDARY arm_structure_size_boundary extern int arm_structure_size_boundary; + +/* This is the value used to initialise arm_structure_size_boundary. If a + particular arm target wants to change the default value it should change + the definition of this macro, not STRUCTRUE_SIZE_BOUNDARY. See netbsd.h + for an example of this. */ +#ifndef DEFAULT_STRUCTURE_SIZE_BOUNDARY +#define DEFAULT_STRUCTURE_SIZE_BOUNDARY 32 #endif /* Used when parsing command line option -mstructure_size_boundary. */ diff --git a/gcc/config/arm/netbsd.h b/gcc/config/arm/netbsd.h index 7b03d4a..4c8ce40 100644 --- a/gcc/config/arm/netbsd.h +++ b/gcc/config/arm/netbsd.h @@ -157,5 +157,5 @@ Boston, MA 02111-1307, USA. */ This modification is not encouraged but with the present state of the NetBSD source tree it is currently the only solution that meets the requirements. */ -#undef STRUCTURE_SIZE_BOUNDARY -#define STRUCTURE_SIZE_BOUNDARY 8 +#undef DEFAULT_STRUCTURE_SIZE_BOUNDARY +#define DEFAULT_STRUCTURE_SIZE_BOUNDARY 8 |