From 8159dc20247f3498c09cbfd3a3c904fcce32b841 Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 31 Oct 2003 15:58:39 +0000 Subject: [PATCH] Add UNITS_PER_ARG missed in patch. Co-Authored-By: David Edelsohn From-SVN: r73152 --- gcc/ChangeLog | 2 ++ gcc/config/rs6000/rs6000.h | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4b0602206d9..b75e43f0f49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -6,6 +6,8 @@ (rs6000_function_value): Widen integral return value to mode based on TARGET_32BIT, not word_mode. * config/rs6000/rs6000.h (PROMOTE_MODE): Likewise. + (UNITS_PER_ARG): New. + (RS6000_ARG_SIZE): Use it. 2003-10-31 Gerald Pfeifer diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index e36c6c1b13b..2f881c7c79b 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -1764,10 +1764,12 @@ typedef struct rs6000_args /* Define intermediate macro to compute the size (in registers) of an argument for the RS/6000. */ +#define UNITS_PER_ARG (TARGET_32BIT ? 4 : 8) + #define RS6000_ARG_SIZE(MODE, TYPE) \ ((MODE) != BLKmode \ - ? (GET_MODE_SIZE (MODE) + (UNITS_PER_WORD - 1)) / UNITS_PER_WORD \ - : (int_size_in_bytes (TYPE) + (UNITS_PER_WORD - 1)) / UNITS_PER_WORD) + ? (GET_MODE_SIZE (MODE) + (UNITS_PER_ARG - 1)) / UNITS_PER_ARG \ + : (int_size_in_bytes (TYPE) + (UNITS_PER_ARG - 1)) / UNITS_PER_ARG) /* Initialize a variable CUM of type CUMULATIVE_ARGS for a call to a function whose data type is FNTYPE. -- 2.30.2