projects
/
gcc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
re PR target/31989 (Gcc miscompiles C/C++ on Linux/x86-64)
[gcc.git]
/
gcc
/
config
/
i386
/
i386.c
diff --git
a/gcc/config/i386/i386.c
b/gcc/config/i386/i386.c
index 3c9445affdbea46f2586b076ae07c484c215029e..1bea8d7cb9e0f379b6035e1d4f68c8ea2137263a 100644
(file)
--- a/
gcc/config/i386/i386.c
+++ b/
gcc/config/i386/i386.c
@@
-3051,7
+3051,10
@@
init_cumulative_args (CUMULATIVE_ARGS *cum, /* Argument info to initialize */
cum->mmx_nregs = MMX_REGPARM_MAX;
cum->warn_sse = true;
cum->warn_mmx = true;
cum->mmx_nregs = MMX_REGPARM_MAX;
cum->warn_sse = true;
cum->warn_mmx = true;
- cum->maybe_vaarg = (fntype ? type_has_variadic_args_p (fntype) : !libname);
+ cum->maybe_vaarg = (fntype
+ ? (!TYPE_ARG_TYPES (fntype)
+ || type_has_variadic_args_p (fntype))
+ : !libname);
if (!TARGET_64BIT)
{
if (!TARGET_64BIT)
{