llvm-project/clang/lib/StaticAnalyzer/Checkers
Kristof Umann c21ec00d28 [analyzer][UninitializedObjectChecker] PR41611: Regard vector types as primitive
https://bugs.llvm.org/show_bug.cgi?id=41611

Similarly to D61106, the checker ran over an llvm_unreachable for vector types:

struct VectorSizeLong {
  VectorSizeLong() {}
  __attribute__((__vector_size__(16))) long x;
};

void __vector_size__LongTest() {
  VectorSizeLong v;
}
Since, according to my short research,

"The vector_size attribute is only applicable to integral and float scalars,
although arrays, pointers, and function return values are allowed in conjunction
with this construct."
[src: https://gcc.gnu.org/onlinedocs/gcc-4.6.1/gcc/Vector-Extensions.html#Vector-Extensions]

vector types are safe to regard as primitive.

Differential Revision: https://reviews.llvm.org/D61246

llvm-svn: 359539
2019-04-30 08:47:56 +00:00
..
MPI-Checker [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
RetainCountChecker [analyzer] RetainCount: Allow offsets in return values. 2019-04-26 02:05:15 +00:00
UninitializedObject [analyzer][UninitializedObjectChecker] PR41611: Regard vector types as primitive 2019-04-30 08:47:56 +00:00
AllocationState.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
AnalysisOrderChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00
AnalyzerStatsChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ArrayBoundChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ArrayBoundCheckerV2.cpp [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
BasicObjCFoundationChecks.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
BlockInCriticalSectionChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
BoolAssignmentChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
BuiltinFunctionChecker.cpp [analyzer] When failing to evaluate a __builtin_constant_p, presume it's false. 2019-04-03 01:53:40 +00:00
CMakeLists.txt [analyzer] PR41269: Add a bit of C++ smart pointer modeling. 2019-04-23 02:45:42 +00:00
CStringChecker.cpp [analyzer] Add FIXMEs for alpha.unix.cstring.OutOfBounds false positives. 2019-04-25 20:30:14 +00:00
CStringSyntaxChecker.cpp [analyzer] CStringSyntaxChecks: Fix an off-by-one error in the strlcat() check. 2019-02-08 23:59:52 +00:00
CXXSelfAssignmentChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
CallAndMessageChecker.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
CastSizeChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
CastToStructChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
CheckObjCDealloc.cpp [analyzer] Emit an error rather than assert on invalid checker option input 2019-03-08 16:00:42 +00:00
CheckObjCInstMethSignature.cpp Fix file headers. NFC 2019-03-01 06:49:51 +00:00
CheckSecuritySyntaxOnly.cpp [analyzer] PR41185: Fix regression where __builtin_* functions weren't recognized 2019-04-17 19:56:40 +00:00
CheckSizeofPointer.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
CheckerDocumentation.cpp [analyzer] Fix a typo in docs 2019-01-29 10:15:52 +00:00
ChrootChecker.cpp Fix file headers. NFC 2019-03-01 06:49:51 +00:00
CloneChecker.cpp [analyzer] Emit an error rather than assert on invalid checker option input 2019-03-08 16:00:42 +00:00
ConversionChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
DeadStoresChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
DebugCheckers.cpp [analyzer] Fix an assertation failure for invalid sourcelocation, add a new debug checker 2019-03-14 16:10:29 +00:00
DeleteWithNonVirtualDtorChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
DereferenceChecker.cpp Fix file headers. NFC 2019-03-01 06:49:51 +00:00
DirectIvarAssignment.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
DivZeroChecker.cpp [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
DynamicTypeChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
DynamicTypePropagation.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
EnumCastOutOfRangeChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ExprInspectionChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
FixedAddressChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
GCDAntipatternChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
GTestChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
GenericTaintChecker.cpp [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
IdenticalExprChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
InnerPointerChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
InterCheckerAPI.h [analyzer] Reimplement dependencies between checkers 2019-01-26 20:06:54 +00:00
IteratorChecker.cpp [Analyzer] Iterator Checkers - Do an early return after handling calls 2019-04-26 07:30:07 +00:00
IvarInvalidationChecker.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
LLVMConventionsChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
LocalizationChecker.cpp Make SourceManager::createFileID(UnownedTag, ...) take a const llvm::MemoryBuffer* 2019-04-04 21:06:41 +00:00
MIGChecker.cpp Reapply "[analyzer] Introduce a simplified API for adding custom path notes." 2019-04-19 20:23:29 +00:00
MacOSKeychainAPIChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
MacOSXAPIChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
MallocChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00
MallocOverflowSecurityChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
MallocSizeofChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
MmapWriteExecChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00
Move.h [analyzer] PR41269: Add a bit of C++ smart pointer modeling. 2019-04-23 02:45:42 +00:00
MoveChecker.cpp [analyzer] PR41269: Add a bit of C++ smart pointer modeling. 2019-04-23 02:45:42 +00:00
NSAutoreleasePoolChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
NSErrorChecker.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
NoReturnFunctionChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
NonNullParamChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
NonnullGlobalConstantsChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
NullabilityChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00
NumberObjectConversionChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00
OSObjectCStyleCast.cpp [analyzer] Opt-in C Style Cast Checker for OSObject pointers 2019-02-08 21:09:00 +00:00
ObjCAtSyncChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCAutoreleaseWriteChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCContainersASTChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCContainersChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCMissingSuperCallChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCPropertyChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCSelfInitChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCSuperDeallocChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ObjCUnusedIVarsChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
PaddingChecker.cpp [analyzer] Emit an error rather than assert on invalid checker option input 2019-03-08 16:00:42 +00:00
PointerArithChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
PointerSortingChecker.cpp [Analyzer] Update the LLVM license in PointerSortingChecker.cpp 2019-03-13 19:09:48 +00:00
PointerSubChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
PthreadLockChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ReturnPointerRangeChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
ReturnUndefChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
RunLoopAutoreleaseLeakChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
SimpleStreamChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
SmartPtrModeling.cpp [analyzer] SmartPtrModeling: Fix a null dereference. 2019-04-30 03:00:57 +00:00
StackAddrEscapeChecker.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
StdLibraryFunctionsChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
StreamChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
Taint.cpp Fix compiler warning, remove extra ";" [NFC] 2019-04-02 10:01:09 +00:00
Taint.h [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
TaintTesterChecker.cpp [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
TestAfterDivZeroChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
TraversalChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
TrustNonnullChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UndefBranchChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UndefCapturedBlockVarChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UndefResultChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UndefinedArraySubscriptChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UndefinedAssignmentChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
UnixAPIChecker.cpp [analyzer] Split unix.API up to UnixAPIMisuseChecker and UnixAPIPortabilityChecker 2019-01-26 15:56:40 +00:00
UnreachableCodeChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
VLASizeChecker.cpp [analyzer] Move taint API from ProgramState to a separate header. NFC. 2019-03-29 22:49:30 +00:00
ValistChecker.cpp [analyzer] Add CheckerManager::getChecker, make sure that a registry function registers no more than 1 checker 2019-01-26 21:41:50 +00:00
VforkChecker.cpp [analyzer] Supply all checkers with a shouldRegister function 2019-01-26 14:23:08 +00:00
VirtualCallChecker.cpp [analyzer] Enable subcheckers to possess checker options 2019-03-04 00:28:16 +00:00