clang 20.0.0git
|
Classes | |
class | SwiftAggLowering |
Functions | |
bool | shouldPassIndirectly (CodeGenModule &CGM, ArrayRef< llvm::Type * > types, bool asReturnValue) |
Should an aggregate which expands to the given type sequence be passed/returned indirectly under swiftcall? | |
CharUnits | getMaximumVoluntaryIntegerSize (CodeGenModule &CGM) |
Return the maximum voluntary integer size for the current target. | |
CharUnits | getNaturalAlignment (CodeGenModule &CGM, llvm::Type *type) |
Return the Swift CC's notion of the natural alignment of a type. | |
bool | isLegalIntegerType (CodeGenModule &CGM, llvm::IntegerType *type) |
Is the given integer type "legal" for Swift's perspective on the current platform? | |
bool | isLegalVectorType (CodeGenModule &CGM, CharUnits vectorSize, llvm::VectorType *vectorTy) |
Is the given vector type "legal" for Swift's perspective on the current platform? | |
bool | isLegalVectorType (CodeGenModule &CGM, CharUnits vectorSize, llvm::Type *eltTy, unsigned numElts) |
std::pair< llvm::Type *, unsigned > | splitLegalVectorType (CodeGenModule &CGM, CharUnits vectorSize, llvm::VectorType *vectorTy) |
Minimally split a legal vector type. | |
void | legalizeVectorType (CodeGenModule &CGM, CharUnits vectorSize, llvm::VectorType *vectorTy, llvm::SmallVectorImpl< llvm::Type * > &types) |
Turn a vector type in a sequence of legal component vector types. | |
bool | mustPassRecordIndirectly (CodeGenModule &CGM, const RecordDecl *record) |
Is the given record type required to be passed and returned indirectly because of language restrictions? | |
ABIArgInfo | classifyReturnType (CodeGenModule &CGM, CanQualType type) |
Classify the rules for how to return a particular type. | |
ABIArgInfo | classifyArgumentType (CodeGenModule &CGM, CanQualType type) |
Classify the rules for how to pass a particular type. | |
void | computeABIInfo (CodeGenModule &CGM, CGFunctionInfo &FI) |
Compute the ABI information of a swiftcall function. | |
bool | isSwiftErrorLoweredInRegister (CodeGenModule &CGM) |
Is swifterror lowered to a register by the target ABI? | |
ABIArgInfo clang::CodeGen::swiftcall::classifyArgumentType | ( | CodeGenModule & | CGM, |
CanQualType | type | ||
) |
Classify the rules for how to pass a particular type.
Definition at line 859 of file SwiftCallingConv.cpp.
References classifyType(), and clang::ast_matchers::type.
Referenced by computeABIInfo().
ABIArgInfo clang::CodeGen::swiftcall::classifyReturnType | ( | CodeGenModule & | CGM, |
CanQualType | type | ||
) |
Classify the rules for how to return a particular type.
Definition at line 855 of file SwiftCallingConv.cpp.
References classifyType(), and clang::ast_matchers::type.
Referenced by computeABIInfo().
void clang::CodeGen::swiftcall::computeABIInfo | ( | CodeGenModule & | CGM, |
CGFunctionInfo & | FI | ||
) |
Compute the ABI information of a swiftcall function.
This is a private interface for Clang.
Definition at line 864 of file SwiftCallingConv.cpp.
References clang::CodeGen::CGFunctionInfo::arg_begin(), clang::CodeGen::CGFunctionInfo::arg_size(), classifyArgumentType(), classifyReturnType(), clang::CodeGen::CGFunctionInfo::getReturnInfo(), clang::CodeGen::CGFunctionInfo::getReturnType(), and clang::CodeGen::CGFunctionInfoArgInfo::info.
Referenced by clang::CodeGen::CodeGenTypes::arrangeLLVMFunctionInfo().
CharUnits clang::CodeGen::swiftcall::getMaximumVoluntaryIntegerSize | ( | CodeGenModule & | CGM | ) |
Return the maximum voluntary integer size for the current target.
Definition at line 652 of file