gem5  [DEVELOP-FOR-23.0]
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Public Attributes | Private Member Functions | List of all members
gem5::AtomicOpXor< T > Class Template Reference

#include <amo.hh>

Inheritance diagram for gem5::AtomicOpXor< T >:
gem5::TypedAtomicOpFunctor< T > gem5::AtomicOpFunctor

Public Member Functions

 AtomicOpXor (T _a)
 
void execute (T *b)
 
AtomicOpFunctorclone ()
 
- Public Member Functions inherited from gem5::TypedAtomicOpFunctor< T >
void operator() (uint8_t *p)
 
- Public Member Functions inherited from gem5::AtomicOpFunctor
virtual ~AtomicOpFunctor ()
 

Public Attributes

a
 

Private Member Functions

template<typename B >
std::enable_if< std::is_integral< B >::value, void >::type executeImpl (B *b)
 
template<typename B >
std::enable_if<!std::is_integral< B >::value, void >::type executeImpl (B *b)
 

Detailed Description

template<typename T>
class gem5::AtomicOpXor< T >

Definition at line 168 of file amo.hh.

Constructor & Destructor Documentation

◆ AtomicOpXor()

template<typename T >
gem5::AtomicOpXor< T >::AtomicOpXor ( _a)
inline

Definition at line 181 of file amo.hh.

Referenced by gem5::AtomicOpXor< T >::clone().

Member Function Documentation

◆ clone()

template<typename T >
AtomicOpFunctor* gem5::AtomicOpXor< T >::clone ( )
inlinevirtual

◆ execute()

template<typename T >
void gem5::AtomicOpXor< T >::execute ( T *  b)
inlinevirtual

Implements gem5::TypedAtomicOpFunctor< T >.

Definition at line 182 of file amo.hh.

References gem5::ArmISA::b.

◆ executeImpl() [1/2]

template<typename T >
template<typename B >
std::enable_if<std::is_integral<B>::value, void>::type gem5::AtomicOpXor< T >::executeImpl ( B *  b)
inlineprivate

Definition at line 173 of file amo.hh.

References gem5::AtomicOpXor< T >::a, and gem5::ArmISA::b.

◆ executeImpl() [2/2]

template<typename T >
template<typename B >
std::enable_if<!std::is_integral<B>::value, void>::type gem5::AtomicOpXor< T >::executeImpl ( B *  b)
inlineprivate

Definition at line 177 of file amo.hh.

Member Data Documentation

◆ a

template<typename T >
T gem5::AtomicOpXor< T >::a

Definition at line 180 of file amo.hh.

Referenced by gem5::AtomicOpXor< T >::clone(), and gem5::AtomicOpXor< T >::executeImpl().


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

Generated on Sun Jul 30 2023 01:57:07 for gem5 by doxygen 1.8.17