This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix inlining of calls with NULL block (PR56515)


On Mon, Mar 04, 2013 at 01:42:51PM +0100, Richard Biener wrote:
> When inlining call stmts with a NULL gimple_block we still remap
> all the callee blocks into a block tree copy but we'll end up
> not referencing it from anywhere.  This causes verification failures
> because then we have nothing refering to the inline stmt blocks.

Ugh, best would be to set proper block even for the artificially added calls
(whether to look around for surrounding statement blocks or similar).

Because clearing the block tree will have the nasty effect that nothing
in the inlined routine will be debuggable.  Attaching the block tree to
DECL_INITIAL isn't very good either, because while the inline fn itself
will be debuggable, the parent function's variables won't be accessible.

But I guess your patch is fine as a hack to avoid ICEs, and we just should
try harder and harder to avoid ever hitting that situation.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]