On Wed, Sep 13, 2017 at 8:25 PM, Dibyendu Majumdar <mobile@xxxxxxxxxxxxxxx> wrote: > Hi Luc, > > On 12 September 2017 at 14:06, Luc Van Oostenryck > <luc.vanoostenryck@xxxxxxxxx> wrote: >> On Tue, Sep 12, 2017 at 1:47 PM, Dibyendu Majumdar >>> But the issue >>> right now is that the simplifications are not always correct even with >>> the new SSA so that I have to disable everything anyway. >> >> It's what you do but it's not what I do. >> The other part that is broken is simplify_loads() which try to convert >> more variables after each simplification/CSE steps. >> Since the code is copied from the code for the initial conversion >> it's broken in the same ways. >> I just disabled it and things are then correct. >> > > I probably ought to update my project with the latest version you > have. Please let me know if you have an updated minimal changes branch > that I can apply. For SSSA, I have what you should have already or something quite close: * https://github.com/lucvoo/sparse/tree/sssa-mini-v3 And the same but with all LLVM fixes and others fixes or optimizations: * https://github.com/lucvoo/sparse/tree/sssa-next I also have something I use only as a sort of reference which I have absolutely no intention to ever submit. It doesn't do the SSA conversion during linearization and converts more vars. It also seems to be quite correct and so is useful to me for doing comparisons but that's all (and it's not tested for against the kernel, for example): * https://github.com/lucvoo/sparse/tree/mem2ssa-next None of these trees are stable as I often rebuild them while working on the base. So, I'm not sure how useful they can be for you but if you find a problem with linearization, SSA conversion or optimization, you can always check with one of these (probably the last one) to see if it's already fixed or not. -- 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