We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 3bb5772 commit e190567Copy full SHA for e190567
llvm/lib/Analysis/UniformityAnalysis.cpp
@@ -33,12 +33,8 @@ bool llvm::GenericUniformityAnalysisImpl<SSAContext>::markDefsDivergent(
33
template <> void llvm::GenericUniformityAnalysisImpl<SSAContext>::initialize() {
34
for (auto &I : instructions(F)) {
35
bool NoDivergenceSource = false;
36
- if (auto Call = dyn_cast<CallInst>(&I)) {
37
- if (Function *Callee = Call->getCalledFunction()) {
38
- if (Callee->hasFnAttribute(Attribute::NoDivergenceSource))
39
- NoDivergenceSource = true;
40
- }
41
+ if (auto Call = dyn_cast<CallBase>(&I))
+ NoDivergenceSource = Call->hasFnAttr(Attribute::NoDivergenceSource);
42
if (!NoDivergenceSource && TTI->isSourceOfDivergence(&I))
43
markDivergent(I);
44
else if (TTI->isAlwaysUniform(&I))
0 commit comments