Files
clang-p2996/mlir/test/Analysis/DataFlow/test-dead-code-analysis.mlir
Justin Fargnoli 6833a3808f [mlir][DeadCodeAnalysis] Don't Require RegionBranchTerminatorOpInterface in visitRegionTerminator() (#69043)
Fix for a crash reported in #64975. 

The crash occurs in the cast located
[here](ece5dd101c/mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp (L262))
because `llvm.unreachable` doesn't implement
`RegionBranchTerminatorOpInterface`.

The crash is caused by `DeadCodeAnalysis` assuming that
`isa<RegionBranchOpInterface>(op->getParentOp())` implies
`isa<RegionBranchTerminatorOpInterface>(op)` in
`DeadCodeAnalysis::visit()`.

This patch tried to fix this by enabling the analysis to proceed
regardless of whether `op` is a `RegionBranchTerminatorOpInterface`.
2023-10-22 15:34:39 -07:00

6.0 KiB