This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/70047] Warn on inefficient function parameter passing
- From: "egallager at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 28 Sep 2017 18:42:58 +0000
- Subject: [Bug middle-end/70047] Warn on inefficient function parameter passing
- Auto-submitted: auto-generated
- References: <bug-70047-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70047
Eric Gallager <egallager at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ABI
Status|WAITING |NEW
--- Comment #3 from Eric Gallager <egallager at gcc dot gnu.org> ---
I expanded the testcase:
$ cat 70047.c
void f(long a1, long a2, long a3, long a4, long a5, long a6, long a7);
void g(float b1, double b2, long double b3, long b4, long b5, long b6,
register long b7);
struct agg {
long f1;
float f2;
double f3;
long double f4;
};
void h(struct agg c1, struct agg c2, struct agg c3, struct agg c4,
struct agg c5, struct agg c6, struct agg c7, struct agg c8);
$ /usr/local/bin/gcc -c -Wall -Wextra -pedantic -Waggregate-return
-Wvolatile-register-var -Wabi -Wpsabi -O2 70047.c
$
...which still gives no warnings when compiling, so, confirmed. Would probably
make sense as part of -Wpsabi.