diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-03-19 09:49:59 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-03-19 09:51:15 +0100 |
commit | 1f257714674cd8fd69db7367aecdd09b672d1db7 (patch) | |
tree | 257a55c7bf88c318001f18cab3741bc36304b3f8 | |
parent | c1fd4589c2bf9fd8409d51b94df219cb75107762 (diff) | |
download | gcc-1f257714674cd8fd69db7367aecdd09b672d1db7.zip gcc-1f257714674cd8fd69db7367aecdd09b672d1db7.tar.gz gcc-1f257714674cd8fd69db7367aecdd09b672d1db7.tar.bz2 |
arc: Fix up arc_setup_incoming_varargs [PR114175]
Like for x86-64, alpha or rs6000, arc seems to be affected too.
2024-03-19 Jakub Jelinek <jakub@redhat.com>
PR target/114175
* config/arc/arc.cc (arc_setup_incoming_varargs): Only skip
arc_function_arg_advance for TYPE_NO_NAMED_ARGS_STDARG_P functions
if arg.type is NULL.
-rw-r--r-- | gcc/config/arc/arc.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/arc/arc.cc b/gcc/config/arc/arc.cc index 179f11f..686de0f 100644 --- a/gcc/config/arc/arc.cc +++ b/gcc/config/arc/arc.cc @@ -2352,7 +2352,8 @@ arc_setup_incoming_varargs (cumulative_args_t args_so_far, /* We must treat `__builtin_va_alist' as an anonymous arg. */ next_cum = *get_cumulative_args (args_so_far); - if (!TYPE_NO_NAMED_ARGS_STDARG_P (TREE_TYPE (current_function_decl))) + if (!TYPE_NO_NAMED_ARGS_STDARG_P (TREE_TYPE (current_function_decl)) + || arg.type != NULL_TREE) arc_function_arg_advance (pack_cumulative_args (&next_cum), arg); first_anon_arg = next_cum; |