[flang] Add RegionBranchOpInterface to fir.do_loop (#202418)
`fir.do_loop` lacked RegionBranchOpInterface, causing dataflow analyses
and others to treat host loops as opaque and conservatively block
optimizations.
Implement getSuccessorRegions, getEntrySuccessorOperands, and
getSuccessorInputs on fir.do_loop, and override
getMutableSuccessorOperands on fir.result to customize for accommodating
the occasionally present finalValue in `fir.result`.
As a side effect, alias analysis now resolves pass-through iter-carried
references to MustAlias instead of MayAlias.