[ESIMD] Process every function in LowerESIMD #3137
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch is a preparation for moving ESIMD-specific passes
into sycl-post-link. Right now, only functions marked with
"sycl-explicit-simd" metadata are lowered in the LowerESIMD pass.
In sycl-post-link, once we split ESIMD kernels from SYCL kernels,
there is no shared code between two types of kernels, and
LowerESIMD pass can safely process a module with ESIMD kernels
without worrying about another type of kernels (SYCL).
This change is also safe to do now since, as of today, we do not
allow mixing SYCL and ESIMD kernels in one source and in one program.
Thus, LowerESIMD can operate in "exclusive" mode without worrying
about SYCL kernels.
The ESIMD CFG markup made in
Sema::MarkSyclSimdwill beremoved in subsequent patches.