diff --git a/gcc/common/config/avr/avr-common.cc b/gcc/common/config/avr/avr-common.cc index 2f874c5b81c7..cdbe58ad4a89 100644 --- a/gcc/common/config/avr/avr-common.cc +++ b/gcc/common/config/avr/avr-common.cc @@ -29,6 +29,13 @@ /* Implement TARGET_OPTION_OPTIMIZATION_TABLE. */ static const struct default_options avr_option_optimization_table[] = { + // The lookup table from tree-swicth-conversion.cc lives in .rodata + // and hence consumes RAM on almost all devices. As PR49857 has + // been rejected several times for non-technical reasons, just + // disable -ftree-switch-conversion by default. But even with PR49857 + // in place there remains PR81540, which cannot be filtered out since + // the pass has no way to hook in. + { OPT_LEVELS_ALL, OPT_ftree_switch_conversion, NULL, 0 }, // The only effect of -fcaller-saves might be that it triggers // a frame without need when it tries to be smart around calls. { OPT_LEVELS_ALL, OPT_fcaller_saves, NULL, 0 },