1#ifndef CPROVER_GOTO_PROGRAMS_RW_SET
2#define CPROVER_GOTO_PROGRAMS_RW_SET
9#include <unordered_set>
38 result +=
" data race on " +
id2string(
object);
44 typedef std::unordered_map<irep_idt, entryt, irep_id_hash>
entriest;
97 const std::string &suffix,
100 bool dereferenced =
false);
103#define forall_rw_set_entries(it, rw_set) \
104 for (rw_sett::entriest::const_iterator it = (rw_set).entries.begin(); \
105 it != (rw_set).entries.end(); \
instructionst::const_iterator const_targett
Definition goto_program.h:591
Path-condition guard container.
Definition irep2_guard.h:32
Definition namespace.h:10
const shared_localst * shared_locals
Definition rw_set.h:89
void compute(const expr2tc &expr)
Definition rw_set.cpp:89
void read_rec(const expr2tc &expr)
Definition rw_set.h:73
entriest entries
Definition rw_set.h:45
rw_sett(const namespacet &_ns, goto_programt::const_targett _target, const expr2tc &expr, const shared_localst *_shared_locals=nullptr)
Definition rw_set.h:63
const namespacet & ns
Definition rw_set.h:87
void read_write_rec(const expr2tc &expr, bool r, bool w, const std::string &suffix, const guard2tc &guard, const expr2tc &original_expr, bool dereferenced=false)
Definition rw_set.cpp:195
void assign(const expr2tc &lhs, const expr2tc &rhs)
Definition rw_set.cpp:163
std::unordered_set< irep_idt, irep_id_hash > shared_localst
Definition rw_set.h:51
rw_sett(const namespacet &_ns, goto_programt::const_targett _target, const shared_localst *_shared_locals=nullptr)
Definition rw_set.h:55
void read_rec(const expr2tc &expr, const guard2tc &guard, const expr2tc &original_expr)
Definition rw_set.h:78
const goto_programt::const_targett target
Definition rw_set.h:88
std::unordered_map< irep_idt, entryt, irep_id_hash > entriest
Definition rw_set.h:44
irep_container< expr2t > expr2tc
Definition irep2.h:431
const std::string & id2string(const irep_idt &d)
Definition irep.h:1405
#define false
Definition stdbool.h:10
bool w
Definition rw_set.h:17
entryt()
Definition rw_set.h:21
const guard2tc & get_guard() const
Definition rw_set.h:25
std::string get_comment() const
Definition rw_set.h:30
guard2tc guard
Definition rw_set.h:18
irep_idt object
Definition rw_set.h:16
bool r
Definition rw_set.h:17
expr2tc original_expr
Definition rw_set.h:19
bool deref
Definition rw_set.h:17