This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/70047] Warn on inefficient function parameter passing


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.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]