clang-tools 20.0.0git
|
Classes | |
class | BufferDerefCheck |
This check verifies if a buffer passed to an MPI (Message Passing Interface) function is sufficiently dereferenced. More... | |
class | MPIModule |
class | TypeMismatchCheck |
This check verifies if buffer type and MPI (Message Passing Interface) datatype pairs match. More... | |
Functions | |
static bool | isMPITypeMatching (const std::multimap< BuiltinType::Kind, StringRef > &MultiMap, const BuiltinType::Kind Kind, StringRef MPIDatatype) |
Check if a BuiltinType::Kind matches the MPI datatype. | |
static bool | isStandardMPIDatatype (StringRef MPIDatatype) |
Check if the MPI datatype is a standard type. | |
static bool | isBuiltinTypeMatching (const BuiltinType *Builtin, std::string &BufferTypeName, StringRef MPIDatatype, const LangOptions &LO) |
Check if a BuiltinType matches the MPI datatype. | |
static bool | isCComplexTypeMatching (const ComplexType *const Complex, std::string &BufferTypeName, StringRef MPIDatatype, const LangOptions &LO) |
Check if a complex float/double/long double buffer type matches the MPI datatype. | |
static bool | isCXXComplexTypeMatching (const TemplateSpecializationType *const Template, std::string &BufferTypeName, StringRef MPIDatatype, const LangOptions &LO) |
Check if a complex<float/double/long double> templated buffer type matches the MPI datatype. | |
static bool | isTypedefTypeMatching (const TypedefType *const Typedef, std::string &BufferTypeName, StringRef MPIDatatype) |
Check if a fixed size width buffer type matches the MPI datatype. | |
static const Type * | argumentType (const CallExpr *const CE, const size_t Idx) |
Get the unqualified, dereferenced type of an argument. | |
|
static |
Get the unqualified, dereferenced type of an argument.
CE | call expression |
Idx | argument index |
Definition at line 230 of file TypeMismatchCheck.cpp.
References CE.
Referenced by clang::tidy::mpi::TypeMismatchCheck::check().
|
static |
Check if a BuiltinType matches the MPI datatype.
Builtin | the builtin type |
BufferTypeName | buffer type name, gets assigned |
MPIDatatype | name of the MPI datatype |
LO | language options |
Definition at line 89 of file TypeMismatchCheck.cpp.
References isMPITypeMatching().
|
static |
Check if a complex float/double/long double buffer type matches the MPI datatype.
Complex | buffer type |
BufferTypeName | buffer type name, gets assigned |
MPIDatatype | name of the MPI datatype |
LO | language options |
Definition at line 142 of file TypeMismatchCheck.cpp.
References isMPITypeMatching().
|
static |
Check if a complex<float/double/long double> templated buffer type matches the MPI datatype.
Template | buffer type |
BufferTypeName | buffer type name, gets assigned |
MPIDatatype | name of the MPI datatype |
LO | language options |
Definition at line 173 of file TypeMismatchCheck.cpp.
References isMPITypeMatching().
|
static |
Check if a BuiltinType::Kind matches the MPI datatype.
MultiMap | datatype group |
Kind | buffer type kind |
MPIDatatype | name of the MPI datatype |
Definition at line 27 of file TypeMismatchCheck.cpp.
References Kind.
Referenced by isBuiltinTypeMatching(), isCComplexTypeMatching(), and isCXXComplexTypeMatching().
|
static |
Check if the MPI datatype is a standard type.
MPIDatatype | name of the MPI datatype |
Definition at line 43 of file TypeMismatchCheck.cpp.
Referenced by clang::tidy::mpi::TypeMismatchCheck::check().
|
static |
Check if a fixed size width buffer type matches the MPI datatype.
Typedef | buffer type |
BufferTypeName | buffer type name, gets assigned |
MPIDatatype | name of the MPI datatype |
Definition at line 206 of file TypeMismatchCheck.cpp.