[llvm] [SandboxIR][Region] Implement an auxiliary vector in Region (PR #126376)
Jorge Gorbe Moya via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 13 11:45:49 PST 2025
================
@@ -87,16 +87,23 @@ class ScoreBoard {
// | |
// |Rgn3| -> Transform1 -> ... -> TransformN -> Check Cost
// +----+
+//
+// The region can also hold an ordered sequence of "auxiliary" instructions.
+// This can be used to pass auxiliary information across region passes, like for
+// example the initial seed slice used by the bottom-up vectorizer.
class Region {
/// All the instructions in the Region. Only new instructions generated during
/// vectorization are part of the Region.
SetVector<Instruction *> Insts;
+ /// An auxiliary sequence of Instruction-Index pairs.
+ SmallVector<Instruction *> Aux;
/// MDNode that we'll use to mark instructions as being part of the region.
MDNode *RegionMDN;
static constexpr const char *MDKind = "sandboxvec";
static constexpr const char *RegionStr = "sandboxregion";
+ static constexpr const char *AuxMDKind = "sbaux";
----------------
slackito wrote:
the other names use "sandbox" instead of "sb" as a prefix. Should this be "sandboxaux"? Or even "sandboxregionaux"? (I don't know how long these strings usually are)
https://github.com/llvm/llvm-project/pull/126376
More information about the llvm-commits
mailing list