|
clang 22.0.0git
|
#include "ABIInfoImpl.h"#include "TargetInfo.h"#include "clang/AST/Decl.h"#include "clang/Basic/DiagnosticFrontend.h"#include "llvm/TargetParser/AArch64TargetParser.h"#include "clang/Basic/AArch64ACLETypes.def"Go to the source code of this file.
Macros | |
| #define | SVE_VECTOR_TYPE(Name, MangledName, Id, SingletonId) |
| #define | SVE_PREDICATE_TYPE(Name, MangledName, Id, SingletonId) |
Enumerations | |
| enum class | ArmSMEInlinability : uint8_t { Ok = 0 , ErrorCalleeRequiresNewZA = 1 << 0 , ErrorCalleeRequiresNewZT0 = 1 << 1 , WarnIncompatibleStreamingModes = 1 << 2 , ErrorIncompatibleStreamingModes = 1 << 3 , IncompatibleStreamingModes , LLVM_MARK_AS_BITMASK_ENUM =(ErrorIncompatibleStreamingModes) } |
Functions | |
| static bool | isStreamingCompatible (const FunctionDecl *F) |
| static void | diagnoseIfNeedsFPReg (DiagnosticsEngine &Diags, const StringRef ABIName, const AArch64ABIInfo &ABIInfo, const QualType &Ty, const NamedDecl *D, SourceLocation loc) |
| static ArmSMEInlinability | GetArmSMEInlinability (const FunctionDecl *Caller, const FunctionDecl *Callee) |
Determines if there are any Arm SME ABI issues with inlining Callee into Caller. | |
| #define SVE_PREDICATE_TYPE | ( | Name, | |
| MangledName, | |||
| Id, | |||
| SingletonId ) |
| #define SVE_VECTOR_TYPE | ( | Name, | |
| MangledName, | |||
| Id, | |||
| SingletonId ) |
|
strong |
| Enumerator | |
|---|---|
| Ok | |
| ErrorCalleeRequiresNewZA | |
| ErrorCalleeRequiresNewZT0 | |
| WarnIncompatibleStreamingModes | |
| ErrorIncompatibleStreamingModes | |
| IncompatibleStreamingModes | |
| LLVM_MARK_AS_BITMASK_ENUM | |
Definition at line 1208 of file AArch64.cpp.
|
static |
Definition at line 1175 of file AArch64.cpp.
References clang::NamedDecl::getDeclName(), clang::Type::isFloatingType(), clang::CodeGen::ABIInfo::isHomogeneousAggregate(), clang::Type::isVectorType(), and clang::DiagnosticsEngine::Report().
|
static |
Determines if there are any Arm SME ABI issues with inlining Callee into Caller.
Returns the issue (if any) in the ArmSMEInlinability bit enum.
Definition at line 1223 of file AArch64.cpp.
References ErrorCalleeRequiresNewZA, ErrorCalleeRequiresNewZT0, ErrorIncompatibleStreamingModes, clang::IsArmStreamingFunction(), isStreamingCompatible(), Ok, and WarnIncompatibleStreamingModes.
|
static |
Definition at line 1166 of file AArch64.cpp.
References clang::Type::getAs(), clang::ValueDecl::getType(), clang::FunctionType::SME_PStateSMCompatibleMask, and clang::T.
Referenced by GetArmSMEInlinability().
Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!
Check out: eBank.nz (Art Generator) |
Netwrck.com (AI Tools) |
Text-Generator.io (AI API) |
BitBank.nz (Crypto AI) |
ReadingTime (Kids Reading) |
RewordGame |
BigMultiplayerChess |
WebFiddle |
How.nz |
Helix AI Assistant