[PATCH] D52116: Introduce llvm.loop.parallel_accesses and llvm.access.group metadata.

Hal Finkel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 3 16:43:51 PST 2018


hfinkel added a comment.

In D52116#1283910 <https://reviews.llvm.org/D52116#1283910>, @Meinersbur wrote:

> @hfinkel ping


I'm basically happy with this, but we shouldn't add things to the LangRef without an RFC. I don't recall seeing one.



================
Comment at: lib/Transforms/Scalar/LoopVersioningLICM.cpp:631
     // Set "llvm.mem.parallel_loop_access" metaData to versioned loop.
+    // FIXME: "llvm.mem.parallel_loop_access" annotates memory access instructions, not loops.
     addStringMetadataToLoop(LVer.getVersionedLoop(),
----------------
I don't understand what this FIXME is saying. What needs to be fixed?


================
Comment at: lib/Transforms/Utils/InlineFunction.cpp:808
+        // memory access instruction, but this would require updating all uses
+        // of one of the access groups in the function. Alternatively, we could
+        // create a new accesses group inheriting from the two others, but this
----------------
Is the problem with "updating all uses of one of the access groups" that we don't have a way to efficiently enumerate them? Would we need to scan the functions for branches and collect all of the loop-id metadata that's relevant first? It would be nice not to lose this information.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D52116/new/

https://reviews.llvm.org/D52116





More information about the llvm-commits mailing list