LLVM 24.0.0git
llvm::SMECallAttrs Class Reference

SMECallAttrs is a utility class to hold the SMEAttrs for a callsite. More...

#include "Target/AArch64/AArch64SMEAttributes.h"

Public Member Functions

 SMECallAttrs (SMEAttrs Caller, SMEAttrs Callee, SMEAttrs Callsite=SMEAttrs::Normal)
 SMECallAttrs (const CallBase &CB, const RTLIB::RuntimeLibcallsInfo *RTLCI)
SMEAttrs & caller ()
SMEAttrs & callee ()
SMEAttrs & callsite ()
SMEAttrs const & caller () const
SMEAttrs const & callee () const
SMEAttrs const & callsite () const
bool requiresSMChange () const
bool requiresLazySave () const
bool requiresPreservingZT0 () const
bool requiresPreservingAllZAState () const
bool requiresZASave () const

Detailed Description

SMECallAttrs is a utility class to hold the SMEAttrs for a callsite.

It has interfaces to query whether a streaming mode change or lazy-save mechanism is required when going from one function to another (e.g. through a call).

Definition at line 161 of file AArch64SMEAttributes.h.

Constructor & Destructor Documentation

◆ SMECallAttrs() [1/2]

llvm::SMECallAttrs::SMECallAttrs ( SMEAttrs Caller,
SMEAttrs Callee,
SMEAttrs Callsite = SMEAttrs::Normal )
inline

Definition at line 168 of file AArch64SMEAttributes.h.

References llvm::SMEAttrs::Normal.

Referenced by callee().

◆ SMECallAttrs() [2/2]

Member Function Documentation

◆ callee() [1/2]

SMEAttrs & llvm::SMECallAttrs::callee ( )
inline

◆ callee() [2/2]

SMEAttrs const & llvm::SMECallAttrs::callee ( ) const
inline

Definition at line 178 of file AArch64SMEAttributes.h.

References callee(), and SMECallAttrs().

◆ caller() [1/2]

SMEAttrs & llvm::SMECallAttrs::caller ( )
inline

◆ caller() [2/2]

SMEAttrs const & llvm::SMECallAttrs::caller ( ) const
inline

Definition at line 177 of file AArch64SMEAttributes.h.

◆ callsite() [1/2]

SMEAttrs & llvm::SMECallAttrs::callsite ( )
inline

Definition at line 176 of file AArch64SMEAttributes.h.

◆ callsite() [2/2]

SMEAttrs const & llvm::SMECallAttrs::callsite ( ) const
inline

Definition at line 181 of file AArch64SMEAttributes.h.

◆ requiresLazySave()

bool llvm::SMECallAttrs::requiresLazySave ( ) const
inline

◆ requiresPreservingAllZAState()

bool llvm::SMECallAttrs::requiresPreservingAllZAState ( ) const
inline

◆ requiresPreservingZT0()

bool llvm::SMECallAttrs::requiresPreservingZT0 ( ) const
inline

◆ requiresSMChange()

bool SMECallAttrs::requiresSMChange ( ) const
Returns
true if a call from Caller -> Callee requires a change in streaming mode.

Definition at line 109 of file AArch64SMEAttributes.cpp.

References callee(), and caller().

Referenced by llvm::AArch64TTIImpl::getInlineCallPenalty().

◆ requiresZASave()

bool llvm::SMECallAttrs::requiresZASave ( ) const
inline

Definition at line 202 of file AArch64SMEAttributes.h.

References requiresLazySave(), and requiresPreservingAllZAState().


The documentation for this class was generated from the following files: