On Wed, Feb 28, 2018 at 10:59 AM, Dibyendu Majumdar <mobile@xxxxxxxxxxxxxxx> wrote: > > Okay, so I am trying to understand where in the simplification phase > the size of the value pseudo used. This was the only place I could > find. Although now multiple value pseudos are created - I guess the > actual value is still the same, and if the size of the value pseudo > does not play a part in simplification then sure this change cannot > cause a change in the simplification process? Or am I missing > something? It is in theory possible in the following case, you have two instruction all the same except two operand size: %r10 <- op.32 %r11, $10 (size 8) %r13 <- op.32 %r11, $10 (size 32) In that case, CSE will not able to see the $10 as the same, because they have size difference and reference by two different pseudo value. If that ever happen, that is a strange situation to get into in the first place. We might want to look a closer look if that ever happen. How can same size instruction have different size operand. The fix I think just need to change the first $10(size 8) into the $10(size 32) version. It is a lot simpler than change the type. I am not sure this example is actually trigger able yet. Not big deal. The whole pesudo size change I feel is a lot simpler than the OP_PUSH or the call argument embed a type approach Luc was doing. Chris -- 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