MLIR dead code analysis

I coincidentally spent an hour helping a colleague debug this same problem again today, in addition to hitting this footgun in 2023. My colleague had added DeadCodeAnalysis to their solver, but not SparseConstantPropagation, and this resulted in the analysis failing to process any BranchOpInterface ops.