aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2002-08-08 17:00:30 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2002-08-08 17:00:30 +0200
commitaa2a83dc0c0614abfdeea82b0bd72e6924732022 (patch)
tree688b14141b715591f211d451b8a2bc1e1d342335 /gcc
parente26053d191e085a945f8da9bda69321a68048dc7 (diff)
downloadgcc-aa2a83dc0c0614abfdeea82b0bd72e6924732022.zip
gcc-aa2a83dc0c0614abfdeea82b0bd72e6924732022.tar.gz
gcc-aa2a83dc0c0614abfdeea82b0bd72e6924732022.tar.bz2
rs6000-protos.h (rs6000_field_alignment): Remove.
* config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove. * config/rs6000/rs6000.c (rs6000_field_alignment): Move... * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the macro. From-SVN: r56131
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/rs6000/rs6000-protos.h1
-rw-r--r--gcc/config/rs6000/rs6000.c21
-rw-r--r--gcc/config/rs6000/rs6000.h7
4 files changed, 13 insertions, 23 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2a1311f..f79f8b1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2002-08-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
+ * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
+ * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
+ macro.
+
2002-08-08 Adam Nemet <anemet@lnxw.com>
* config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
diff --git a/gcc/config/rs6000/rs6000-protos.h b/gcc/config/rs6000/rs6000-protos.h
index 3725c7f..42563d3 100644
--- a/gcc/config/rs6000/rs6000-protos.h
+++ b/gcc/config/rs6000/rs6000-protos.h
@@ -151,7 +151,6 @@ extern void setup_incoming_varargs PARAMS ((CUMULATIVE_ARGS *,
int *, int));
extern struct rtx_def *rs6000_va_arg PARAMS ((tree, tree));
extern void output_mi_thunk PARAMS ((FILE *, tree, int, tree));
-extern int rs6000_field_alignment PARAMS ((tree, int));
#ifdef ARGS_SIZE_RTX
/* expr.h defines ARGS_SIZE_RTX and `enum direction' */
extern enum direction function_arg_padding PARAMS ((enum machine_mode, tree));
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 46b9161..ad99417 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -13115,24 +13115,3 @@ rs6000_xcoff_encode_section_info (decl, first)
&& ! DECL_WEAK (decl))
SYMBOL_REF_FLAG (XEXP (DECL_RTL (decl), 0)) = 1;
}
-
-int
-rs6000_field_alignment (field, computed)
- tree field;
- int computed;
-{
- tree type = get_inner_array_type (field);
-
- if (DEFAULT_ABI == ABI_V4)
- {
- if (TARGET_ALTIVEC && TREE_CODE (type) == VECTOR_TYPE)
- return 128;
- }
- else
- {
- if (TYPE_MODE (type) == DFmode)
- return MIN (32, computed);
- }
-
- return computed;
-}
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 77ed571..dadcc21 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -633,7 +633,12 @@ extern int rs6000_default_long_calls;
/* Most ABIs word-align FP doubles but doubleword-align 64-bit ints. */
#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED) \
- rs6000_field_alignment ((FIELD), (COMPUTED))
+ (DEFAULT_ABI == ABI_V4 \
+ ? ((TARGET_ALTIVEC \
+ && TREE_CODE (get_inner_array_type (FIELD)) == VECTOR_TYPE) \
+ ? 128 : (COMPUTED)) \
+ : ((TYPE_MODE (get_inner_array_type (FIELD)) == DFmode) \
+ ? MIN (32, (COMPUTED)) : (COMPUTED)))
/* Make strings word-aligned so strcpy from constants will be faster.
Make vector constants quadword aligned. */