| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | CastValueChecker.cpp | 208 QualType CastToTy = Call.getResultType(); in addCastTransition() 210 if (Call.getNumArgs() > 0) { in addCastTransition() 211 Object = Call.getArgExpr(0); in addCastTransition() 378 evalNonNullParamNullReturn(Call, DV, C); in evalDynCast() 385 evalNullParamNullReturn(Call, DV, C); in evalCastOrNull() 392 evalNonNullParamNullReturn(Call, DV, C); in evalDynCastOrNull() 393 evalNullParamNullReturn(Call, DV, C); in evalDynCastOrNull() 423 evalZeroParamNonNullReturn(Call, DV, C); in evalGetAs() 424 evalZeroParamNullReturn(Call, DV, C); in evalGetAs() 468 const auto *Lookup = CDM.lookup(Call); in evalCall() [all …]
|
| H A D | SmartPtrModeling.cpp | 249 return Call.getDecl() && Call.getDecl()->getDeclContext()->isStdNamespace(); in isStdFunctionCall() 253 if (Call.getNumArgs() != 2 || !isStdFunctionCall(Call)) in isStdOstreamOperatorCall() 269 if (Call.getNumArgs() != 2 || !isStdFunctionCall(Call)) in isPotentiallyComparisionOpCall() 289 if (StdSwapCall.matches(Call)) { in evalCall() 295 return handleSwap(State, Call.getArgSVal(0), Call.getArgSVal(1), C); in evalCall() 387 if (Call.getNumArgs() == 0) { in evalCall() 426 if (handleAssignOp(Call, C)) in evalCall() 432 (this->**Handler)(Call, C); in evalCall() 481 SVal First = Call.getArgSVal(0); in handleComparisionOp() 575 const CallEvent *Call) const { in checkRegionChanges() [all …]
|
| H A D | PthreadLockChecker.cpp | 358 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), false, in AcquirePthreadLock() 365 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), false, in AcquireXNULock() 372 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), true, in TryPthreadLock() 378 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), true, in TryXNULock() 385 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), true, in TryFuchsiaLock() 391 AcquireLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), true, in TryC11Lock() 471 ReleaseLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), CheckKind); in ReleaseAnyLock() 523 DestroyLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), in DestroyPthreadLock() 530 DestroyLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), XNUSemantics, in DestroyXNULock() 590 InitLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), CheckKind); in InitAnyLock() [all …]
|
| H A D | BlockInCriticalSectionChecker.cpp | 52 bool isBlockingFunction(const CallEvent &Call) const; 53 bool isLockFunction(const CallEvent &Call) const; 54 bool isUnlockFunction(const CallEvent &Call) const; 115 if (const auto *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in isUnlockFunction() 129 if (!isBlockingFunction(Call) in checkPostCall() 130 && !isLockFunction(Call) in checkPostCall() 131 && !isUnlockFunction(Call)) in checkPostCall() 136 if (isUnlockFunction(Call) && mutexCount > 0) { in checkPostCall() 139 } else if (isLockFunction(Call)) { in checkPostCall() 144 reportBlockInCritSection(BlockDesc, Call, C); in checkPostCall() [all …]
|
| H A D | ErrnoTesterChecker.cpp | 27 class ErrnoTesterChecker : public Checker<eval::Call> { 29 bool evalCall(const CallEvent &Call, CheckerContext &C) const; 34 static void evalSetErrno(CheckerContext &C, const CallEvent &Call); 37 static void evalGetErrno(CheckerContext &C, const CallEvent &Call); 48 const CallEvent &Call); 85 const CallEvent &Call) { in evalSetErrno() argument 87 Call.getArgSVal(0), Irrelevant)); in evalSetErrno() 91 const CallEvent &Call) { in evalGetErrno() argument 168 bool ErrnoTesterChecker::evalCall(const CallEvent &Call, in evalCall() argument 170 const EvalFn *Fn = TestCalls.lookup(Call); in evalCall() [all …]
|
| H A D | MismatchedIteratorChecker.cpp | 73 if (Call.getNumArgs() < 1) in checkPreCall() 82 if (Call.getNumArgs() < 2) in checkPreCall() 89 verifyMatch(C, Call.getArgSVal(0), Call.getArgSVal(1)); in checkPreCall() 97 verifyMatch(C, Call.getArgSVal(0), in checkPreCall() 99 if (Call.getNumArgs() == 2) { in checkPreCall() 104 verifyMatch(C, Call.getArgSVal(0), in checkPreCall() 106 if (Call.getNumArgs() == 3 && in checkPreCall() 109 verifyMatch(C, Call.getArgSVal(1), Call.getArgSVal(2)); in checkPreCall() 117 if (Call.getNumArgs() < 2) in checkPreCall() 132 verifyMatch(C, Call.getArgSVal(0), Call.getArgSVal(1)); in checkPreCall() [all …]
|
| H A D | IteratorModeling.cpp | 180 handleOverloadedOperator(C, Call, Op); in checkPostCall() 204 if (isa<CXXConstructorCall>(&Call) && Call.getNumArgs() == 1) { in checkPostCall() 365 handleComparison(C, OrigExpr, Call.getReturnValue(), Call.getArgSVal(0), in handleOverloadedOperator() 374 if (Call.getNumArgs() >= 1 && in handleOverloadedOperator() 380 } else if (Call.getNumArgs() >= 2) { in handleOverloadedOperator() 408 handleIncrement(C, Call.getReturnValue(), Call.getArgSVal(0), in handleOverloadedOperator() 409 Call.getNumArgs()); in handleOverloadedOperator() 418 handleDecrement(C, Call.getReturnValue(), Call.getArgSVal(0), in handleOverloadedOperator() 431 Call.getArgSVal(0), Call.getArgSVal(1)); in handleAdvanceLikeFunction() 442 Call.getArgSVal(0), Call.getArgSVal(1)); in handleAdvanceLikeFunction() [all …]
|
| H A D | ChrootChecker.cpp | 42 class ChrootChecker : public Checker<eval::Call, check::PreCall> { 56 bool evalCall(const CallEvent &Call, CheckerContext &C) const; 60 void evalChroot(const CallEvent &Call, CheckerContext &C) const; 61 void evalChdir(const CallEvent &Call, CheckerContext &C) const; 67 if (Chroot.matches(Call)) { in evalCall() 68 evalChroot(Call, C); in evalCall() 71 if (Chdir.matches(Call)) { in evalCall() 72 evalChdir(Call, C); in evalCall() 99 const Expr *ArgExpr = Call.getArgExpr(0); in evalChdir() 116 void ChrootChecker::checkPreCall(const CallEvent &Call, in checkPreCall() argument [all …]
|
| H A D | MallocChecker.cpp | 287 if (!Call.getDecl() || !isa<FunctionDecl>(Call.getDecl())) in isStandardNewDelete() 1182 const Expr *FlagsEx = Call.getArgExpr(Call.getNumArgs() - 1); in performKernelMalloc() 1285 if (!isStandardRealloc(Call) && !isGRealloc(Call)) in checkRealloc() 1643 Call, C, in checkNewAllocator() 1689 FreeMemAux(C, Call.getArgExpr(0), Call, C.getState(), in checkPostObjCMessage() 1708 return MallocMemAux(C, Call, Call.getArgExpr(I->getASTIndex()), in MallocMemReturnsAttr() 1818 return FreeMemAux(C, Call.getArgExpr(Num), Call, State, Hold, in FreeMemAux() 2690 evalMulForBufferSize(C, Call.getArgExpr(0), Call.getArgExpr(1)); in CallocMem() 3128 assert(Call); in mayFreeAnyEscapedMemoryOrIsModeledExplicitly() 3142 if (!Call->isInSystemHeader() || Call->argumentsMayEscape()) in mayFreeAnyEscapedMemoryOrIsModeledExplicitly() [all …]
|
| H A D | SimpleStreamChecker.cpp | 61 const CallEvent &Call, 82 const CallEvent *Call, 106 if (!Call.isGlobalCFunction()) in checkPostCall() 109 if (!OpenFn.matches(Call)) in checkPostCall() 125 if (!Call.isGlobalCFunction()) in checkPreCall() 128 if (!CloseFn.matches(Call)) in checkPreCall() 132 SymbolRef FileDesc = Call.getArgSVal(0).getAsSymbol(); in checkPreCall() 140 reportDoubleClose(FileDesc, Call, C); in checkPreCall() 198 R->addRange(Call.getSourceRange()); in reportDoubleClose() 219 if (!Call.isInSystemHeader()) in guaranteedNotToCloseFile() [all …]
|
| H A D | InnerPointerChecker.cpp | 122 const CallEvent &Call) const { in isInvalidatingMemberFunction() 129 return isa<CXXDestructorCall>(Call) || in isInvalidatingMemberFunction() 136 const CallEvent &Call) const { in isInnerPointerAccessFunction() 137 return matchesAny(Call, CStrFn, DataFn, DataMemberFn); in isInnerPointerAccessFunction() 145 const Expr *Origin = Call.getOriginExpr(); in markPtrSymbolsReleased() 184 if (matchesAny(Call, AddressofFn, AddressofFn_)) in checkFunctionArguments() 218 if (isInvalidatingMemberFunction(Call)) { in checkPostCall() 224 if (isInnerPointerAccessFunction(Call)) { in checkPostCall() 226 if (isa<SimpleFunctionCall>(Call)) { in checkPostCall() 237 SVal RawPtr = Call.getReturnValue(); in checkPostCall() [all …]
|
| H A D | NonNullParamChecker.cpp | 52 const Decl *FD = Call.getDecl(); in setBitsAccordingToFunctionAttributes() 76 for (const ParmVarDecl *Parameter : Call.parameters()) { in setBitsAccordingToParameterAttributes() 91 setBitsAccordingToFunctionAttributes(Call, AttrNonNull); in getNonNullAttrsImpl() 99 return getNonNullAttrsImpl(Call, Call.getNumArgs()); in getNonNullAttrs() 104 return getNonNullAttrsImpl(Call, Call.param_size()); in getNonNullAttrs() 110 if (!Call.getDecl()) in checkPreCall() 114 unsigned NumArgs = Call.getNumArgs(); in checkPreCall() 117 ArrayRef<ParmVarDecl *> parms = Call.parameters(); in checkPreCall() 133 const Expr *ArgE = Call.getArgExpr(idx); in checkPreCall() 134 SVal V = Call.getArgSVal(idx); in checkPreCall() [all …]
|
| H A D | StreamChecker.cpp | 180 return Call.getArgSVal(Desc->StreamArgNo); in getStreamArg() 369 if (!Call.isGlobalCFunction()) in lookupFn() 371 for (auto P : Call.parameters()) { in lookupFn() 377 return FnDescriptions.lookup(Call); in lookupFn() 464 Desc->PreFn(this, Desc, Call, C); in checkPreCall() 470 Desc = FnTestDescriptions.lookup(Call); in evalCall() 474 Desc->EvalFn(this, Desc, Call, C); in evalCall() 590 SVal StreamVal = getStreamArg(Desc, Call); in preFread() 615 SVal StreamVal = getStreamArg(Desc, Call); in preFwrite() 713 SVal StreamVal = getStreamArg(Desc, Call); in preFseek() [all …]
|
| H A D | GTestChecker.cpp | 100 void checkPostCall(const CallEvent &Call, CheckerContext &C) const; 132 assert(Call->getNumArgs() >= 1 && Call->getNumArgs() <= 2); in modelAssertionResultBoolConstructor() 135 SVal BooleanArgVal = Call->getArgSVal(0); in modelAssertionResultBoolConstructor() 143 SVal ThisVal = Call->getCXXThisVal(); in modelAssertionResultBoolConstructor() 146 Call->getDecl()->getParent(), ThisVal, State); in modelAssertionResultBoolConstructor() 160 const CXXConstructorCall *Call, CheckerContext &C) const { in modelAssertionResultCopyConstructor() argument 161 assert(Call->getNumArgs() == 1); in modelAssertionResultCopyConstructor() 165 SVal OtherVal = Call->getArgSVal(0); in modelAssertionResultCopyConstructor() 166 SVal ThisVal = Call->getCXXThisVal(); in modelAssertionResultCopyConstructor() 181 void GTestChecker::checkPostCall(const CallEvent &Call, in checkPostCall() argument [all …]
|
| H A D | StringChecker.cpp | 32 bool isCharToStringCtor(const CallEvent &Call, const ASTContext &ACtx) const; 35 void checkPreCall(const CallEvent &Call, CheckerContext &C) const; 38 bool StringChecker::isCharToStringCtor(const CallEvent &Call, in isCharToStringCtor() argument 40 if (!TwoParamStdStringCtor.matches(Call)) in isCharToStringCtor() 42 const auto *FD = dyn_cast<FunctionDecl>(Call.getDecl()); in isCharToStringCtor() 52 const QualType Arg1Ty = Call.getArgExpr(0)->getType().getCanonicalType(); in isCharToStringCtor() 53 const QualType Arg2Ty = Call.getArgExpr(1)->getType().getCanonicalType(); in isCharToStringCtor() 67 void StringChecker::checkPreCall(const CallEvent &Call, in checkPreCall() argument 69 if (!isCharToStringCtor(Call, C.getASTContext())) in checkPreCall() 71 const auto Param = Call.getArgSVal(0).getAs<Loc>(); in checkPreCall() [all …]
|
| /llvm-project-15.0.7/clang/test/SemaCUDA/ |
| H A D | kernel-call.cu | 38 static __global__ void Call(T); 41 static __global__ void Call(int); 42 static __global__ void Call(void*); 47 a0<c>::Call<<<0, 0>>>(arg); in d0() 48 a1::Call<<<0,0>>>(arg); in d0() 49 a2<c>::Call<<<0,0>>>(arg); in d0() 50 a3::Call<<<0, 0>>>(arg); in d0() 53 a0<void*>::Call<<<0, 0>>>(arg); in d1() 54 a1::Call<<<0,0>>>(arg); in d1() 55 a2<void*>::Call<<<0,0>>>(arg); in d1() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | PartiallyInlineLibCalls.cpp | 38 if (Call->onlyReadsMemory()) in optimizeSQRT() 56 Type *Ty = Call->getType(); in optimizeSQRT() 57 IRBuilder<> Builder(Call->getNextNode()); in optimizeSQRT() 74 Call->replaceAllUsesWith(Phi); in optimizeSQRT() 80 Instruction *LibCall = Call->clone(); in optimizeSQRT() 86 Call->addFnAttr(Attribute::ReadNone); in optimizeSQRT() 91 ? Builder.CreateFCmpORD(Call, Call) in optimizeSQRT() 97 Phi->addIncoming(Call, &CurrBB); in optimizeSQRT() 122 if (!Call || !(CalledFunc = Call->getCalledFunction())) in runPartiallyInlineLibCalls() 125 if (Call->isNoBuiltin() || Call->isStrictFP()) in runPartiallyInlineLibCalls() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/NVPTX/ |
| H A D | NVVMIntrRange.cpp | 90 CallInst *Call = dyn_cast<CallInst>(&I); in runNVVMIntrRange() local 91 if (!Call) in runNVVMIntrRange() 94 if (Function *Callee = Call->getCalledFunction()) { in runNVVMIntrRange() 98 Changed |= addRangeMetadata(0, MaxBlockSize.x, Call); in runNVVMIntrRange() 101 Changed |= addRangeMetadata(0, MaxBlockSize.y, Call); in runNVVMIntrRange() 104 Changed |= addRangeMetadata(0, MaxBlockSize.z, Call); in runNVVMIntrRange() 120 Changed |= addRangeMetadata(0, MaxGridSize.x, Call); in runNVVMIntrRange() 123 Changed |= addRangeMetadata(0, MaxGridSize.y, Call); in runNVVMIntrRange() 126 Changed |= addRangeMetadata(0, MaxGridSize.z, Call); in runNVVMIntrRange() 142 Changed |= addRangeMetadata(32, 32+1, Call); in runNVVMIntrRange() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/BPF/ |
| H A D | BPFAbstractMemberAccess.cpp | 357 if (!Call) in IsPreserveDIAccessIndexCall() 441 for (auto Call : CallList) { in replaceWithGEP() local 454 getBaseElementType(Call), Call->getArgOperand(0), IdxList, "", Call); in replaceWithGEP() 456 Call->eraseFromParent(); in replaceWithGEP() 495 Call->replaceAllUsesWith(Call->getArgOperand(0)); in removePreserveAccessIndexIntrinsic() 496 Call->eraseFromParent(); in removePreserveAccessIndexIntrinsic() 861 while (Call) { in computeBaseAndAccessKey() 864 Call = AIChain[Call].first; in computeBaseAndAccessKey() 882 Call = StackElem.first; in computeBaseAndAccessKey() 1119 Call->eraseFromParent(); in transformGEPChain() [all …]
|
| H A D | BPFCheckAndAdjustIR.cpp | 108 auto *Call = dyn_cast<CallInst>(&I); in removePassThroughBuiltin() local 109 if (!Call) in removePassThroughBuiltin() 117 Value *Arg = Call->getArgOperand(1); in removePassThroughBuiltin() 118 Call->replaceAllUsesWith(Arg); in removePassThroughBuiltin() 119 ToBeDeleted = Call; in removePassThroughBuiltin() 138 auto *Call = dyn_cast<CallInst>(&I); in removeCompareBuiltin() local 139 if (!Call) in removeCompareBuiltin() 148 Value *Arg0 = Call->getArgOperand(0); in removeCompareBuiltin() 149 Value *Arg1 = Call->getArgOperand(1); in removeCompareBuiltin() 158 Call->replaceAllUsesWith(ICmp); in removeCompareBuiltin() [all …]
|
| H A D | BPFPreserveDIType.cpp | 51 auto *Call = dyn_cast<CallInst>(&I); in BPFPreserveDITypeImpl() local 52 if (!Call) in BPFPreserveDITypeImpl() 55 const auto *GV = dyn_cast<GlobalValue>(Call->getCalledOperand()); in BPFPreserveDITypeImpl() 60 if (!Call->getMetadata(LLVMContext::MD_preserve_access_index)) in BPFPreserveDITypeImpl() 63 PreserveDITypeCalls.push_back(Call); in BPFPreserveDITypeImpl() 73 for (auto Call : PreserveDITypeCalls) { in BPFPreserveDITypeImpl() local 107 BasicBlock *BB = Call->getParent(); in BPFPreserveDITypeImpl() 118 new LoadInst(Type::getInt64Ty(BB->getContext()), GV, "", Call); in BPFPreserveDITypeImpl() 120 BPFCoreSharedInfo::insertPassThrough(M, BB, LDInst, Call); in BPFPreserveDITypeImpl() 121 Call->replaceAllUsesWith(PassThroughInst); in BPFPreserveDITypeImpl() [all …]
|
| /llvm-project-15.0.7/clang/unittests/StaticAnalyzer/ |
| H A D | BugReportInterestingnessTest.cpp | 43 void handleInteresting(const CallEvent &Call, CheckerContext &C) const; 45 void handleCheck(const CallEvent &Call, CheckerContext &C) const; 46 void handleBug(const CallEvent &Call, CheckerContext &C) const; 52 void checkPreCall(const CallEvent &Call, CheckerContext &C) const { in checkPreCall() argument 53 const HandlerFn *Handler = Handlers.lookup(Call); in checkPreCall() 57 (*Handler)(this, Call, C); in checkPreCall() 65 SymbolRef Sym = Call.getArgSVal(0).getAsSymbol(); in handleInteresting() 75 SymbolRef Sym = Call.getArgSVal(0).getAsSymbol(); in handleNotInteresting() 83 void InterestingnessTestChecker::handleCheck(const CallEvent &Call, in handleCheck() argument 85 SymbolRef Sym = Call.getArgSVal(0).getAsSymbol(); in handleCheck() [all …]
|
| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Core/ |
| H A D | ExprEngineCallAndReturn.cpp | 191 const Decl *StaticDecl = Call->getDecl(); in wasDifferentDeclUsedForInlining() 486 if (Call.getKind() == CE_Block && in inlineCall() 497 const Expr *CallE = Call.getOriginExpr(); in inlineCall() 580 const Expr *E = Call.getOriginExpr(); in finishArgumentConstruction() 613 const Expr *E = Call.getOriginExpr(); in finishArgumentConstruction() 693 const Expr *E = Call.getOriginExpr(); in bindReturnValue() 791 switch (Call.getKind()) { in mayInlineCallKind() 1153 if (isTrivialObjectAssignment(*Call)) { in defaultEvalCall() 1154 performTrivialCopy(Bldr, Pred, *Call); in defaultEvalCall() 1161 const Expr *E = Call->getOriginExpr(); in defaultEvalCall() [all …]
|
| /llvm-project-15.0.7/llvm/lib/IR/ |
| H A D | Verifier.cpp | 2257 Call); in verifyStatepoint() 2265 Call); in verifyStatepoint() 2278 Call); in verifyStatepoint() 2288 Call); in verifyStatepoint() 2322 Call); in verifyStatepoint() 2333 Call); in verifyStatepoint() 3175 Call.getArgOperand(i), FTy->getParamType(i), Call); in visitCallBase() 5267 Call); in visitIntrinsicCall() 5550 if (Call.getParent() && Call.getParent()->getParent()) { in visitIntrinsicCall() 6105 Call); in verifyAttachedCallBundle() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/X86/ |
| H A D | X86WinEHState.cpp | 413 Call->setTailCall(true); in generateLSDAInEAXThunk() 416 Builder.CreateRet(Call); in generateLSDAInEAXThunk() 461 if (Call.arg_size() != 2) in rewriteSetJmpCall() 501 NewCall->takeName(&Call); in rewriteSetJmpCall() 503 Call.eraseFromParent(); in rewriteSetJmpCall() 528 CallBase &Call) { in getStateForCall() argument 623 return !Call.doesNotThrow(); in isStateStoreNeeded() 669 if (!Call || !isStateStoreNeeded(Personality, *Call)) in addStateStores() 736 if (!Call || !isStateStoreNeeded(Personality, *Call)) in addStateStores() 756 if (!Call) in addStateStores() [all …]
|