When replacing ComplexDeinterleavingPass::ReductionOperation, we can do it
either from the Real or Imaginary part. The correct way is to take whichever
is later in the BasicBlock, but before the patch, we just always took the
Real part.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Not exactly familiar with this part of code, but the fix makes sense to me.
Perhaps we could add a check that OrderedRoots is topologically sorted under EXPENSIVE_CHECKS.
Comment Actions
@danilaml OrderedRoots has Instructions from the same BasicBlock, and they get there one by one during for (auto &I : *B) iteration. So, there is no risk of messing up there unless someone tries to add much more functionality :)