I believe cprop is done. Currently it returns a list of instructions sorted by number but with gaps from elimination. I alter conditional branches that turn out to be constant, so that can affect block structure. I can remove that if it is a problem and map instructions back into their original blocks