[PATCH] D84589: [CodeMoverUtils] Add optional data dependence checks using Alias Analysis

Bardia Mahjour via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 28 14:36:07 PDT 2020


bmahjour added inline comments.


================
Comment at: llvm/lib/Transforms/Utils/CodeMoverUtils.cpp:249
+  if (CallInst *CI = dyn_cast<CallInst>(&I)) {
+    for (Value *Op : CI->arg_operands()) {
+      if (Op->getType()->isPointerTy()) {
----------------
Not all aliasing implications are visible through the arguments. AAResults contains a number of overloads specifically designed to handle function calls. Did you look into using the following instead?

```
ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc);
ModRefInfo getModRefInfo(Instruction *I, const CallBase *Call);
ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2);
```


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D84589



More information about the llvm-commits mailing list