On 06/05/2017 05:46 AM, Jakub Jelinek wrote:
Here is a patch to implement that. I chose to keep the 3 dumps predefined
dumps and just tweak their registered number, otherwise the changes would be
bigger.
Yeah, that can wait for another day.
The patch additionally renames TDI_generic to TDI_gimple (to match
the dump name and content) and because we have more than 256 dumps these
days and we register them all even at -O0, the patch avoids 4 unnecessary
reallocations. Ok for trunk if testing passes?
LGTM, two nits below. (I can't approve though)
+/* Allow languages and middle-end to register their dumps before the
+ optimization passes. */
blank line needed here, I think?
+void
+gcc::dump_manager::
+register_dumps ()
+{
+ lang_hooks.register_dumps (this);
+ /* If this assert fails, some FE registered more than
+ FIRST_ME_AUTO_NUMBERED_DUMP - FIRST_AUTO_NUMBERED_DUMP
+ dump files. Bump FIRST_ME_AUTO_NUMBERED_DUMP accordingly. */
+ gcc_assert (m_next_dump <= FIRST_ME_AUTO_NUMBERED_DUMP);
+ if (m_next_dump < FIRST_ME_AUTO_NUMBERED_DUMP)
+ m_next_dump = FIRST_ME_AUTO_NUMBERED_DUMP;
Unconditionally set it? there's the protecting assert. It's almost as
if you want 'else gcc_unreachable ()' (with suitable morph of < to <=).
nathan
--
Nathan Sidwell