[clang] [llvm] [HLSL] Adding Flatten and Branch if attributes (PR #116331)

via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 2 22:27:05 PST 2024


================
@@ -300,6 +301,36 @@ static MDTuple *emitTopLevelLibraryNode(Module &M, MDNode *RMD,
   return constructEntryMetadata(nullptr, nullptr, RMD, Properties, Ctx);
 }
 
+// TODO: We might need to refactor this to be more generic,
+// in case we need more metadata to be replaced.
+static void translateBranchMetadata(Module &M) {
+  for (auto &F : M) {
+    for (auto &BB : F) {
+      auto *BBTerminatorInst = BB.getTerminator();
+
+      auto *HlslControlFlowMD =
+          BBTerminatorInst->getMetadata("hlsl.controlflow.hint");
+
+      if (!HlslControlFlowMD || HlslControlFlowMD->getNumOperands() < 2)
----------------
joaosaffran wrote:

If you have a better way to check this default case, please let me know your thoughts, I am not happy with the way this check current works either

https://github.com/llvm/llvm-project/pull/116331


More information about the cfe-commits mailing list