reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
838 if (CI->getArgOperand(0) == CI->getArgOperand(1)) 838 if (CI->getArgOperand(0) == CI->getArgOperand(1)) 839 return B.CreateBitCast(CI->getArgOperand(0), CI->getType()); 839 return B.CreateBitCast(CI->getArgOperand(0), CI->getType()); 842 if (isOnlyUsedInEqualityComparison(CI, CI->getArgOperand(0))) { 842 if (isOnlyUsedInEqualityComparison(CI, CI->getArgOperand(0))) { 843 Value *StrLen = emitStrLen(CI->getArgOperand(1), B, DL, TLI); 846 Value *StrNCmp = emitStrNCmp(CI->getArgOperand(0), CI->getArgOperand(1), 846 Value *StrNCmp = emitStrNCmp(CI->getArgOperand(0), CI->getArgOperand(1), 850 for (auto UI = CI->user_begin(), UE = CI->user_end(); UI != UE;) { 850 for (auto UI = CI->user_begin(), UE = CI->user_end(); UI != UE;) { 857 return CI; 862 bool HasStr1 = getConstantStringInfo(CI->getArgOperand(0), SearchStr); 863 bool HasStr2 = getConstantStringInfo(CI->getArgOperand(1), ToFindStr); 867 return B.CreateBitCast(CI->getArgOperand(0), CI->getType()); 867 return B.CreateBitCast(CI->getArgOperand(0), CI->getType()); 874 return Constant::getNullValue(CI->getType()); 877 Value *Result = castToCStr(CI->getArgOperand(0), B); 880 return B.CreateBitCast(Result, CI->getType()); 885 Value *StrChr = emitStrChr(CI->getArgOperand(0), ToFindStr[0], B, TLI); 886 return StrChr ? B.CreateBitCast(StrChr, CI->getType()) : nullptr; 889 annotateNonNullBasedOnAccess(CI, {0, 1});