On Tue, Jul 18, 2017 at 12:49:06PM +0200, Martin Liška wrote: > Solved, tail call was responsible for dead RTL instructions.
This seems similar to https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00362.html then. Is it? There are many cases where we generated dead code during expand on purpose (some just laziness, some to avoid code complications). Because of this it is hard to detect where we generate dead code that is just plain wrong (should not be dead). And such things aren't trivial to debug :-( Segher