Hi,
the code below compiles to 60 byte when using -Os
and 4 byte when using -O2.
This is just one example of many from the test suite:
extern void f(char *const *);
void g (char **o)
{
static const char *const multilib_exclusions_raw[] = { 0 };
const char *const *q = multilib_exclusions_raw;
f (o);
while (*q++)
f (o);
}
--
Summary: Object code is bigger at -Os than at -O2
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mstein dot lists at googlemail dot com
GCC target triplet: arm-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35806