diff options
author | Pierre van Houtryve <pierre.vanhoutryve@amd.com> | 2025-04-25 12:10:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-25 12:10:02 +0200 |
commit | c792b25e47e00dbf2cd9654bf806fe5f9de6e44e (patch) | |
tree | e362040e718e7f98f8d6016b3cea076e035255d1 /clang/lib/Frontend/ASTMerge.cpp | |
parent | 6738cfe0a40af2754000346ff090ebb2115ce15f (diff) | |
download | llvm-c792b25e47e00dbf2cd9654bf806fe5f9de6e44e.zip llvm-c792b25e47e00dbf2cd9654bf806fe5f9de6e44e.tar.gz llvm-c792b25e47e00dbf2cd9654bf806fe5f9de6e44e.tar.bz2 |
[GlobalISel] Add `combine` action for C++ combine rules (#135941)
Adds a `combine` action (DAG operator) which allows for easy definition of
combine rule that only match one or more instructions, and defer all remaining
match/apply logic to C++ code.
This avoids the need for split match/apply function in such cases. One function
can do the trick as long as it returns `true` if it changed any code.
This is implemented as syntactic sugar over match/apply. The combine rule is
just a match pattern BUT every C++ pattern inside is treated as an "apply" function.
This makes it fit seamlessly with the current backend.
Fixes #92410
Diffstat (limited to 'clang/lib/Frontend/ASTMerge.cpp')
0 files changed, 0 insertions, 0 deletions