29 for(it=begin(); it!=end(); ++it)
31 if(local_read && it->id==read.
id)
41 if(local_write && it->id==write.
id)
74 for(const_iterator it1=begin(); it1!=end(); ++it1)
76 const_iterator it2=it1;
92 for(; it2!=end(); ++it2)
105 if(it1->eq_class==it2->eq_class)
122 unsigned initial_size=size();
128 for(const_iterator it1=begin(); it1!=end(); ++it1)
130 const_iterator it2=it1;
136 for(; it2!=end(); ++it2)
149 for(iterator it3=begin(); it3!=end(); ++it3)
150 if(it3->eq_class==from)
154 assert(initial_size>size());
164 std::map<unsigned, std::set<source_locationt> > classed;
166 for(it=begin(); it!=end(); ++it)
168 if(classed.find(it->eq_class)==classed.end())
170 std::set<source_locationt> s;
172 classed[it->eq_class]=s;
175 classed[it->eq_class].insert(it->loc);
178 for(std::map<
unsigned, std::set<source_locationt> >::const_iterator
179 m_it=classed.begin();
180 m_it!=classed.end(); ++m_it)
183 std::set<source_locationt>::const_iterator l_it;
184 for(l_it=m_it->second.begin(); l_it!=m_it->second.end(); ++l_it)
static mstreamt & eom(mstreamt &m)
void print(messaget &message)
void dp_merge()
merge in N^3
void dp_analysis(const abstract_eventt &read, const abstract_eventt &write)
source_locationt source_location
bool dp(const abstract_eventt &e1, const abstract_eventt &e2) const
search in N^2