https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79622
--- Comment #10 from Sebastian Pop <spop at gcc dot gnu.org> --- > So a black-box would be a set of stmts rather than a whole GIMPLE BB Correct: this can be an abstract view of the IR. The only place where we want to start transforming the code is in the code generation. We should be able to interrupt graphite at any point (maybe due to a compute-out) and leave the original unmodified IR. Code generation should not fail and it should be linear time in number of statements, such that when we start code generation we know that it will succeed in a short amount of compilation time. > You mean this tagging of associativeness is not yet done? Yes, we removed the tagging code when we removed the out-of-ssa translation. The original tagging relied on the name of the arrays that we created to find whether the reduction was associative. This caused some performance regressions of loops not interchanged anymore (for example the swim loop.)