------- Comment #3 from jakub at gcc dot gnu dot org 2009-09-23 10:41 -------
r152018 seems to change generated code even on:
/* { dg-options "-O2 -m32 -fno-inline -mtune=generic" } */
struct S
{
const char *s1;
int s2;
char s3;
};
static struct S s;
static inline const char *
bar (void)
{
s.s3 = 0;
return s.s1;
}
const char *
foo (void)
{
return bar ();
}
In bar %esi is saved, even when clearly no nested functions are involved.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
