clang 8.0.0

Public Member Functions | Static Public Member Functions | List of all members
clang::threadSafety::til::Store Class Reference

Store a value to memory. More...

`#include "clang/Analysis/Analyses/ThreadSafetyTIL.h"`

Inheritance diagram for clang::threadSafety::til::Store:
[legend]
Collaboration diagram for clang::threadSafety::til::Store:
[legend]

## Public Member Functions
| Store (SExpr *P, SExpr *V)
| Store (const Store &S, SExpr *P, SExpr *V)
SExpr * | destination ()
const SExpr * | destination () const
SExpr * | source ()
const SExpr * | source () const
template<class V >
V::R_SExpr | traverse (V &Vs, typename V::R_Ctx Ctx)
template<class C >
C::CType | compare (const Store *E, C &Cmp) const
Public Member Functions inherited from clang::threadSafety::til::SExpr
| SExpr ()=delete
TIL_Opcode | opcode () const
void * | operator new (size_t S, MemRegionRef &R)
void * | operator new (size_t)=delete
| SExpr objects must be created in an arena. More...
void | operator delete (void *)=delete
| SExpr objects cannot be deleted. More...
unsigned | id () const
| Returns the instruction ID for this expression. More...
BasicBlock * | block () const
| Returns the block, if this is an instruction in a basic block, otherwise returns null. More...
void | setID (BasicBlock *B, unsigned id)
| Set the basic block and instruction ID for this expression. More...

## Static Public Member Functions
static bool | classof (const SExpr *E)

## Additional Inherited Members
Protected Member Functions inherited from clang::threadSafety::til::SExpr
| SExpr (TIL_Opcode Op)
| SExpr (const SExpr &E)
Protected Attributes inherited from clang::threadSafety::til::SExpr
const unsigned char | Opcode
unsigned char | Reserved = 0
unsigned short | Flags = 0
unsigned | SExprID = 0
BasicBlock * | Block = nullptr

## Detailed Description

Store a value to memory.

The destination is a pointer to a field, the source is the value to store.

Definition at line 1057 of file ThreadSafetyTIL.h.

## Constructor & Destructor Documentation

## ◆ Store() [1/2]

clang::threadSafety::til::Store::Store | ( | SExpr * | P,
|  | SExpr * | V
| ) |  |
| inline

Definition at line 1059 of file ThreadSafetyTIL.h.

## ◆ Store() [2/2]

clang::threadSafety::til::Store::Store | ( | const Store & | S,
|  | SExpr * | P,
|  | SExpr * | V
| ) |  |
| inline

Definition at line 1060 of file ThreadSafetyTIL.h.

## Member Function Documentation

## ◆ classof()

static bool clang::threadSafety::til::Store::classof | ( | const SExpr * | E | ) |
| inline static

Definition at line 1062 of file ThreadSafetyTIL.h.

References clang::threadSafety::til::SExpr::opcode().

## ◆ compare()

template<class C >

C::CType clang::threadSafety::til::Store::compare | ( | const Store * | E,
|  | C & | Cmp
| ) |  | const
| inline

Definition at line 1078 of file ThreadSafetyTIL.h.

## ◆ destination() [1/2]

SExpr* clang::threadSafety::til::Store::destination | ( |  | ) |
| inline

Definition at line 1064 of file ThreadSafetyTIL.h.

Referenced by clang::threadSafety::til::PrettyPrinter< StdPrinter, std::ostream >::printStore().

## ◆ destination() [2/2]

const SExpr* clang::threadSafety::til::Store::destination | ( |  | ) | const
| inline

Definition at line 1065 of file ThreadSafetyTIL.h.

## ◆ source() [1/2]

SExpr* clang::threadSafety::til::Store::source | ( |  | ) |
| inline

Definition at line 1067 of file ThreadSafetyTIL.h.

Referenced by clang::threadSafety::til::PrettyPrinter< StdPrinter, std::ostream >::printStore().

## ◆ source() [2/2]

const SExpr* clang::threadSafety::til::Store::source | ( |  | ) | const
| inline

Definition at line 1068 of file ThreadSafetyTIL.h.

## ◆ traverse()

template<class V >

V::R_SExpr clang::threadSafety::til::Store::traverse | ( | V & | Vs,
|  | typename V::R_Ctx | Ctx
| ) |  |
| inline

Definition at line 1071 of file ThreadSafetyTIL.h.

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

- include/clang/Analysis/Analyses/ThreadSafetyTIL.h