aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorStan Shebs <shebs@apple.com>2004-11-14 20:28:58 +0000
committerStan Shebs <shebs@gcc.gnu.org>2004-11-14 20:28:58 +0000
commit594a51febe0e6419db7bf30ca233da8a563301fa (patch)
treec5f0272bf5c341b9e9b100e210c59c9a41ee1a0e /gcc/ChangeLog
parent1e1b864906576c1e8ccd53595a727fc393fc0074 (diff)
downloadgcc-594a51febe0e6419db7bf30ca233da8a563301fa.zip
gcc-594a51febe0e6419db7bf30ca233da8a563301fa.tar.gz
gcc-594a51febe0e6419db7bf30ca233da8a563301fa.tar.bz2
Basic ABI changes for passing structs by value in 64-bit Darwin.
* config/rs6000/rs6000.c (rs6000_darwin64_abi): New flag. (rs6000_override_options): Set it for 64-bit Darwin. (rs6000_parse_abi_options): Add testing options to change it. (rs6000_return_in_memory): Test whether the type is one that can be passed in registers. (darwin64_function_arg_advance): New. (function_arg_advance): Call it, plus add recursion depth argument and test when counting off arguments. (rs6000_darwin64_function_arg): New. (function_arg): Call it. (setup_incoming_varargs): Add argument to function_arg_advance. (rs6000_darwin64_function_value): New. (rs6000_function_value): Call it. * config/rs6000/rs6000.h (FUNCTION_ARG_ADVANCE): Pass depth arg. * config/rs6000/rs6000-protos.h: Update decl of function_arg_advance. From-SVN: r90629
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d6adbcb..4eea1ed 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,23 @@
+2004-11-14 Stan Shebs <shebs@apple.com>
+
+ Basic ABI changes for passing structs by value in 64-bit Darwin.
+ * config/rs6000/rs6000.c (rs6000_darwin64_abi): New flag.
+ (rs6000_override_options): Set it for 64-bit Darwin.
+ (rs6000_parse_abi_options): Add testing options to change it.
+ (rs6000_return_in_memory): Test whether the type is one
+ that can be passed in registers.
+ (darwin64_function_arg_advance): New.
+ (function_arg_advance): Call it, plus add recursion depth
+ argument and test when counting off arguments.
+ (rs6000_darwin64_function_arg): New.
+ (function_arg): Call it.
+ (setup_incoming_varargs): Add argument to function_arg_advance.
+ (rs6000_darwin64_function_value): New.
+ (rs6000_function_value): Call it.
+ * config/rs6000/rs6000.h (FUNCTION_ARG_ADVANCE): Pass depth arg.
+ * config/rs6000/rs6000-protos.h: Update decl of
+ function_arg_advance.
+
2004-11-14 Andrew Pinski <pinskia@physics.uc.edu>
PR c/17279