aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/c4x
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2002-06-15 09:41:13 +0000
committerAldy Hernandez <aldyh@gcc.gnu.org>2002-06-15 09:41:13 +0000
commit182e515e724e29aaa44873ea71333fd799ee3925 (patch)
tree61bbb17e58b498d6833007ffcfd18ab3fddef41d /gcc/config/c4x
parent2313d59405eb165d70bbdd81bb1914ab1eddd1d8 (diff)
downloadgcc-182e515e724e29aaa44873ea71333fd799ee3925.zip
gcc-182e515e724e29aaa44873ea71333fd799ee3925.tar.gz
gcc-182e515e724e29aaa44873ea71333fd799ee3925.tar.bz2
tm.texi (MEMBER_TYPE_FORCES_BLK): Document MODE argument.
2002-06-15 Aldy Hernandez <aldyh@redhat.com> * tm.texi (MEMBER_TYPE_FORCES_BLK): Document MODE argument. * stor-layout.c (compute_record_mode): Remove check for FUNCTION_ARG_REG_LITTLE_ENDIAN and VOIDmode when checking for MEMBER_TYPE_FORCES_BLK. Pass new mode field to MEMBER_TYPE_FORCES_BLK. * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Same. * config/c4x/c4x.h (MEMBER_TYPE_FORCES_BLK): Same. From-SVN: r54643
Diffstat (limited to 'gcc/config/c4x')
-rw-r--r--gcc/config/c4x/c4x.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/c4x/c4x.h b/gcc/config/c4x/c4x.h
index a18dbeb..e73c40e 100644
--- a/gcc/config/c4x/c4x.h
+++ b/gcc/config/c4x/c4x.h
@@ -378,9 +378,9 @@ extern const char *c4x_rpts_cycles_string, *c4x_cpu_version_string;
#define MAX_FIXED_MODE_SIZE 64 /* HImode. */
/* If a structure has a floating point field then force structure
- to have BLKMODE. */
-#define MEMBER_TYPE_FORCES_BLK(FIELD) \
- (TREE_CODE (TREE_TYPE (FIELD)) == REAL_TYPE)
+ to have BLKMODE, unless it is the only field. */
+#define MEMBER_TYPE_FORCES_BLK(FIELD, MODE) \
+ (TREE_CODE (TREE_TYPE (FIELD)) == REAL_TYPE && (MODE) == VOIDmode)
/* Number of bits in the high and low parts of a two stage
load of an immediate constant. */