LLVM  14.0.0git
Public Types | Public Attributes | List of all members
AAHeapToStackFunction::AllocationInfo Struct Reference
Collaboration diagram for AAHeapToStackFunction::AllocationInfo:
Collaboration graph
[legend]

Public Types

enum  AllocationKind { AllocationKind::MALLOC, AllocationKind::CALLOC, AllocationKind::ALIGNED_ALLOC }
 The kind of allocation. More...
 
enum  { STACK_DUE_TO_USE, STACK_DUE_TO_FREE, INVALID }
 The status wrt. a rewrite. More...
 

Public Attributes

CallBase *const CB
 The call that allocates the memory. More...
 
enum AAHeapToStackFunction::AllocationInfo::AllocationKind Kind
 
LibFunc LibraryFunctionId = NotLibFunc
 The library function id for the allocation. More...
 
enum AAHeapToStackFunction::AllocationInfo:: { ... }  Status = STACK_DUE_TO_USE
 The status wrt. a rewrite. More...
 
bool HasPotentiallyFreeingUnknownUses = false
 Flag to indicate if we encountered a use that might free this allocation but which is not in the deallocation infos. More...
 
SmallPtrSet< CallBase *, 1 > PotentialFreeCalls {}
 The set of free calls that use this allocation. More...
 

Detailed Description

Definition at line 5753 of file AttributorAttributes.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

The status wrt. a rewrite.

Enumerator
STACK_DUE_TO_USE 
STACK_DUE_TO_FREE 
INVALID 

Definition at line 5768 of file AttributorAttributes.cpp.

◆ AllocationKind

The kind of allocation.

Enumerator
MALLOC 
CALLOC 
ALIGNED_ALLOC 

Definition at line 5758 of file AttributorAttributes.cpp.

Member Data Documentation

◆ CB

CallBase* const AAHeapToStackFunction::AllocationInfo::CB

The call that allocates the memory.

Definition at line 5755 of file AttributorAttributes.cpp.

Referenced by AAHeapToStackFunction::getSize(), AAHeapToStackFunction::manifest(), and AAHeapToStackFunction::updateImpl().

◆ HasPotentiallyFreeingUnknownUses

bool AAHeapToStackFunction::AllocationInfo::HasPotentiallyFreeingUnknownUses = false

Flag to indicate if we encountered a use that might free this allocation but which is not in the deallocation infos.

Definition at line 5776 of file AttributorAttributes.cpp.

◆ Kind

enum AAHeapToStackFunction::AllocationInfo::AllocationKind AAHeapToStackFunction::AllocationInfo::Kind

◆ LibraryFunctionId

LibFunc AAHeapToStackFunction::AllocationInfo::LibraryFunctionId = NotLibFunc

The library function id for the allocation.

Definition at line 5765 of file AttributorAttributes.cpp.

Referenced by AAHeapToStackFunction::initialize(), and AAHeapToStackFunction::manifest().

◆ PotentialFreeCalls

SmallPtrSet<CallBase *, 1> AAHeapToStackFunction::AllocationInfo::PotentialFreeCalls {}

The set of free calls that use this allocation.

Definition at line 5779 of file AttributorAttributes.cpp.

Referenced by AAHeapToStackFunction::isAssumedHeapToStackRemovedFree(), and AAHeapToStackFunction::manifest().

◆ Status

enum { ... } AAHeapToStackFunction::AllocationInfo::Status

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