diff options
| -rw-r--r-- | llvm/lib/Transforms/Scalar/LoopUnswitch.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/Transforms/Scalar/Sink.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp index b410df0c5f6..afd0249ac96 100644 --- a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp +++ b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp @@ -683,7 +683,7 @@ bool LoopUnswitch::processCurrentLoop() { for (auto &I : *BB) { auto CS = CallSite(&I); if (!CS) continue; - if (CS.hasFnAttr(Attribute::Convergent)) + if (CS.isConvergent()) return false; if (auto *II = dyn_cast<InvokeInst>(&I)) if (!II->getUnwindDest()->canSplitPredecessors()) diff --git a/llvm/lib/Transforms/Scalar/Sink.cpp b/llvm/lib/Transforms/Scalar/Sink.cpp index 90f3a2aa46e..72b586c85fe 100644 --- a/llvm/lib/Transforms/Scalar/Sink.cpp +++ b/llvm/lib/Transforms/Scalar/Sink.cpp @@ -78,7 +78,7 @@ static bool isSafeToMove(Instruction *Inst, AliasAnalysis &AA, if (auto *Call = dyn_cast<CallBase>(Inst)) { // Convergent operations cannot be made control-dependent on additional // values. - if (Call->hasFnAttr(Attribute::Convergent)) + if (Call->isConvergent()) return false; for (Instruction *S : Stores) |

