> Hmm... Maybe it could, I'm not sure. The problem is that DCE removes > insns, and then DF associates remaining uses in debug insns to earlier > DEFs. Adjusting debug insns in DCE is right per the VTA design motto: > decide as if debug insns weren't there, adjust them as you would adjust > non-debug insns. This code borrowed from DF into DCE is the “adjust” > bit.
But DCE isn't the only pass that removes insns. Does the same logic need to be replicated in all passes that do? On the other hand, these passes call into DF when they remove insns, so DF is a central place here. > Err... These depend on the interface changes of functions defined > within DF to work. No, they don't, I can compile them independently. -- Eric Botcazou