LLVM 20.0.0git
List of all members
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...)>:
Inheritance graph
[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 147 of file PointerLikeTypeTraits.h.


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