Another interesting thing is that even without removing the single-store shortcut when using test-linearize we have an "instruction buffer overflow". In other words, an instruction (a phi-node for sure) can't be displayed in a 4096 bytes buffer (because it as so much phi-sources). This is something I have already seen before when trying to understand the origin of some quadratic behaviour I had seen. In this case it was clearly a problem related to SSA construction which kinda wrongly accumulated phi-sources from parents. In the current case we have a phi-node with: - 241 sources - 550 VOIDs (sources that have been removed during simplification) - its BB has a single parent (thus should never have a phi-node). With the shortcut removed, we then have hundreds and hundreds of phi-nodes with hundreds of sources which fully exp^lain the excessive time needed to process them. And it's very much something possible with the removal of the shortcut since its goal was to avoid to create phi-nodes when possible. So this clearly points to the problem of the SSA construction wich not only create misplaced phi-nodes but also, in some case, create lots of them while there was no need for them. The shortcut was very good at hiding this. -- Luc -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html