LLVM 22.0.0git
llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)> Struct Template Reference

Provide a default specialization for function pointers that assumes 4-byte alignment. More...

#include "llvm/Support/PointerLikeTypeTraits.h"

Inheritance diagram for llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)>:
[legend]

Additional Inherited Members

Static Public Member Functions inherited from llvm::FunctionPointerLikeTypeTraits< 4, ReturnT(*)(ParamTs...)>
static void * getAsVoidPointer (ReturnT(*)(ParamTs...) P)
static ReturnT(*)(ParamTs...) getFromVoidPointer (void *P)
Static Public Attributes inherited from llvm::FunctionPointerLikeTypeTraits< 4, ReturnT(*)(ParamTs...)>
static constexpr int NumLowBitsAvailable

Detailed Description

template<typename ReturnT, typename... ParamTs>
struct llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)>

Provide a default specialization for function pointers that assumes 4-byte alignment.

We assume here that functions used with this are always at least 4-byte aligned. This means that, for example, thumb functions won't work or systems with weird unaligned function pointers won't work. But all practical systems we support satisfy this requirement.

Definition at line 139 of file PointerLikeTypeTraits.h.


The documentation for this struct was generated from the following file: