diff options
author | Hongren Zheng <i@zenithal.me> | 2025-01-28 13:32:28 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-28 13:32:28 +0800 |
commit | 3a439e2caf0bb545ee451df1de5b02ea068140f7 (patch) | |
tree | e2949f579aa0a2e064a0e10c4840e7e8c87a7281 /clang/unittests/Format/ConfigParseTest.cpp | |
parent | 3c64f86314fbf9a3cd578419f16e621a4de57eaa (diff) | |
download | llvm-3a439e2caf0bb545ee451df1de5b02ea068140f7.zip llvm-3a439e2caf0bb545ee451df1de5b02ea068140f7.tar.gz llvm-3a439e2caf0bb545ee451df1de5b02ea068140f7.tar.bz2 |
[mlir][dataflow] disallow outside use of propagateIfChanged for DataFlowSolver (#120885)
Detailed writeup is in https://github.com/google/heir/issues/1153. See
also https://github.com/llvm/llvm-project/pull/120881. In short,
`propagateIfChanged` is used outside of the `DataFlowAnalysis` scope,
because it is public, but it does not propagate as expected as the
`DataFlowSolver` has stopped running.
To solve such misuse, `propagateIfChanged` should be made
protected/private.
For downstream users affected by this, to correctly propagate the
change, the Analysis should be re-run (check #120881) instead of just a
`propagateIfChanged`
The change to `IntegerRangeAnalysis` is just a expansion of the
`solver->propagateIfChanged`. The `Lattice` has already been updated by
the `join`. Propagation is done by `onUpdate`.
Cc @Mogball for review
Diffstat (limited to 'clang/unittests/Format/ConfigParseTest.cpp')
0 files changed, 0 insertions, 0 deletions