Index: b/src/env/__libc_start_main.c =================================================================== --- a/src/env/__libc_start_main.c +++ b/src/env/__libc_start_main.c @@ -69,6 +69,8 @@ weak_alias(libc_start_init, __libc_start typedef int lsm2_fn(int (*)(int,char **,char **), int, char **); static lsm2_fn libc_start_main_stage2; +#pragma GCC push_options +#pragma GCC optimize ("no-optimize-sibling-calls") int __libc_start_main(int (*main)(int,char **,char **), int argc, char **argv) { char **envp = argv+argc+1; @@ -84,6 +86,7 @@ int __libc_start_main(int (*main)(int,ch __asm__ ( "" : "+r"(stage2) : : "memory" ); return stage2(main, argc, argv); } +#pragma GCC pop_options static int libc_start_main_stage2(int (*main)(int,char **,char **), int argc, char **argv) {