There are a number of tests that fail -- generally ones involving
generic vectorization -- at -O0 because we run out of registers.
The lower-subreg pass cleans things up sufficiently to allow these
tests to succeed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168721
138bc75d-0d04-0410-961f-
82ee72b054a4
2011-01-12 Richard Henderson <rth@redhat.com>
+ * config/mn10300/mn10300.c (mn10300_option_override): Force enable
+ flag_split_wide_types.
+
* config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
(mn10300_trampoline_init): Rewrite without a template, an immediate
load and a direct branch.
not have timing information available for it. */
flag_schedule_insns = 0;
flag_schedule_insns_after_reload = 0;
+
+ /* Force enable splitting of wide types, as otherwise it is trivial
+ to run out of registers. Indeed, this works so well that register
+ allocation problems are now more common *without* optimization,
+ when this flag is not enabled by default. */
+ flag_split_wide_types = 1;
}
if (mn10300_tune_string)