diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2025-07-02 11:28:37 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-02 11:28:37 +0100 |
commit | 38200e94f1428b586dc1778133120541e65c20b5 (patch) | |
tree | f8cbb94c76d28f2463d71cb7c564622b6a4385fc /clang/lib/Basic/SourceManager.cpp | |
parent | 4c7a706589ca97101972c88d90449d27275b3ab5 (diff) | |
download | llvm-38200e94f1428b586dc1778133120541e65c20b5.zip llvm-38200e94f1428b586dc1778133120541e65c20b5.tar.gz llvm-38200e94f1428b586dc1778133120541e65c20b5.tar.bz2 |
[DAG] visitFREEZE - always allow freezing multiple operands (#145939)
Always try to fold freeze(op(....)) -> op(freeze(),freeze(),freeze(),...).
This patch proposes we drop the opt-in limit for opcodes that are allowed to push a freeze through the op to freeze all its operands, through the tree towards the roots.
I'm struggling to find a strong reason for this limit apart from the DAG freeze handling being immature for so long - as we've improved coverage in canCreateUndefOrPoison/isGuaranteedNotToBeUndefOrPoison it looks like the regressions are not as severe.
Hopefully this will help some of the regression issues in #143102 etc.
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions