diff --git a/annotated.html b/annotated.html
index 38a423b425..311a0ecc00 100644
--- a/annotated.html
+++ b/annotated.html
@@ -1214,10 +1214,11 @@
-
-typedef ordered_set < const loc_t * > locset_t
-
+
+typedef hvec_set < const loc_t * > locset_t
+
typedef Visitor_Context Context
@@ -163,10 +163,10 @@
void clear ()
-const locset_t & getDefs (const IR::Node *n) const
+const locset_t & getDefs (const IR::Node *n) const
-const locset_t & getUses (const IR::Node *n) const
+const locset_t & getUses (const IR::Node *n) const
const IR::Node * apply_visitor (const IR::Node *, const char *name=0) override
diff --git a/classes.html b/classes.html
index 410a09867b..637bdb6af4 100644
--- a/classes.html
+++ b/classes.html
@@ -148,7 +148,7 @@
GeneralInliner (P4 )Generator (P4Tools::P4Smith)Generic (P4Tools::TraceEvents )GenericCoreSmithTarget (P4Tools::P4Smith::Generic)GenericDescription (P4Tools::TraceEvents )UBPFModel::getUBPFModelVersion (UBPF)getV1ModelVersion (P4V1)GlobalActionReplacements (P4 )GlobalCopyPropagation (P4 )Graph_visitor (graphs )Graphs::GraphAttributeSetter (graphs )Graphs (graphs )GreedyNodeSelection (P4Tools::P4Testgen)Continuation::Guard (P4Tools::P4Testgen)ControlFlowVisitor::GuardGlobal
H
-HalfOpenRange HandleNoMatch (P4 )HandleValidityHeaderUnion (P4 )has_dbprint has_dbprint< T, std::void_t< decltype(std::declval< T >().dbprint(std::declval< std::ostream & >()))> > has_rtti (RTTI)has_static_type_name (IR)has_static_type_name< T, std::void_t< decltype(T::static_type_name())> > (IR)has_toString (Util)has_toString< T, std::void_t< decltype(std::declval< T >().toString())> > (Util)HasExits (P4 )Hash (Util)hash< ClosedRange< Unit, Order > > (std )hash< cstring > (std )hash< HalfOpenRange< Unit, Order > > (std )hash< P4::loc_t > (std )hash< P4::ProgramPoint > (std )hash< std::pair< T1, T2 > > (std )hash< std::tuple< Types... > > (std )Hash_Model (P4V1)Hash_Model (UBPF)hash_vector_base Hasher (Util)Hasher< big_int > (Util)Hasher< bool > (Util)Hasher< char > (Util)Hasher< ClosedRange< Unit, Order > > (Util)Hasher< cstring > (Util)Hasher< double > (Util)Hasher< float > (Util)Hasher< HalfOpenRange< Unit, Order > > (Util)Hasher< IR::ID > (Util)Hasher< P4::ProgramPoint > (Util)Hasher< signed char > (Util)Hasher< signed int > (Util)Hasher< signed long > (Util)Hasher< signed long long > (Util)Hasher< signed short > (Util)Hasher< std::pair< T1, T2 > > (Util)Hasher< std::shared_ptr< T > > (Util)Hasher< std::string > (Util)Hasher< std::string_view > (Util)Hasher< std::tuple< Types... > > (Util)Hasher< std::unique_ptr< T > > (Util)Hasher< T * > (Util)Hasher< unsigned char > (Util)Hasher< unsigned int > (Util)Hasher< unsigned long > (Util)Hasher< unsigned long long > (Util)Hasher< unsigned short > (Util)hasSideEffects HasTableApply (P4 )HaveNonHeaderChecksumArgs (DPDK )HaveNonHeaderLargeOperandAssignment (DPDK )hdrFieldInfo HeaderConverter (BMV2)HeaderTypeMaxLengthCalculator hex hexvec HierarchicalNames (P4 )HSIndexContretizer (P4 )HSIndexFinder (P4 )HSIndexSimplifier (P4 )HSIndexToMember (P4Tools )HSIndexTransform (P4 )hvec_map
+HalfOpenRange HandleNoMatch (P4 )HandleValidityHeaderUnion (P4 )has_dbprint has_dbprint< T, std::void_t< decltype(std::declval< T >().dbprint(std::declval< std::ostream & >()))> > has_rtti (RTTI)has_static_type_name (IR)has_static_type_name< T, std::void_t< decltype(T::static_type_name())> > (IR)has_toString (Util)has_toString< T, std::void_t< decltype(std::declval< T >().toString())> > (Util)HasExits (P4 )Hash (Util)hash< ClosedRange< Unit, Order > > (std )hash< cstring > (std )hash< HalfOpenRange< Unit, Order > > (std )hash< P4::ComputeDefUse::loc_t > (std )hash< P4::loc_t > (std )hash< P4::ProgramPoint > (std )hash< std::pair< T1, T2 > > (std )hash< std::tuple< Types... > > (std )Hash_Model (P4V1)Hash_Model (UBPF)hash_vector_base Hasher (Util)Hasher< big_int > (Util)Hasher< bool > (Util)Hasher< char > (Util)Hasher< ClosedRange< Unit, Order > > (Util)Hasher< cstring > (Util)Hasher< double > (Util)Hasher< float > (Util)Hasher< HalfOpenRange< Unit, Order > > (Util)Hasher< IR::ID > (Util)Hasher< P4::ProgramPoint > (Util)Hasher< signed char > (Util)Hasher< signed int > (Util)Hasher< signed long > (Util)Hasher< signed long long > (Util)Hasher< signed short > (Util)Hasher< std::pair< T1, T2 > > (Util)Hasher< std::shared_ptr< T > > (Util)Hasher< std::string > (Util)Hasher< std::string_view > (Util)Hasher< std::tuple< Types... > > (Util)Hasher< std::unique_ptr< T > > (Util)Hasher< T * > (Util)Hasher< unsigned char > (Util)Hasher< unsigned int > (Util)Hasher< unsigned long > (Util)Hasher< unsigned long long > (Util)Hasher< unsigned short > (Util)hasSideEffects HasTableApply (P4 )HaveNonHeaderChecksumArgs (DPDK )HaveNonHeaderLargeOperandAssignment (DPDK )hdrFieldInfo HeaderConverter (BMV2)HeaderTypeMaxLengthCalculator hex hexvec HierarchicalNames (P4 )HSIndexContretizer (P4 )HSIndexFinder (P4 )HSIndexSimplifier (P4 )HSIndexToMember (P4Tools )HSIndexTransform (P4 )hvec_map hvec_set
I
ICastable ICompileContext ID (IR)IDeclaration (IR)Identity (NetHash )IfInParser (P4 )CFG::IfNode (BMV2)IfStatementCondition (P4Tools::TraceEvents )IfStatementUnroll (DPDK )IHasBlock (P4 )IHasDbPrint IHasSourceInfo (Util)IHasWidth (EBPF )IJson (Util)indent_t IndexedLocation (P4 )IndexedVector (IR)IndexExpression (P4Tools::P4Testgen::Bmv2 )IndexMap (P4Tools::P4Testgen::Bmv2 )TypeCheck::InferActionArgsBottomUp TypeCheck::InferActionArgsTopDown TypeCheck::InferExpressionsBottomUp TypeCheck::InferExpressionsTopDown IngressDeparserPNA (TC )IngressDeparserPSA (EBPF )InheritedCompilerOptionSpec (P4Tools )InjectFixedMetadataField (DPDK )InjectInternetChecksumIntermediateValue (DPDK )InjectJumboStruct (DPDK )Inline (P4 )InlineActions (P4 )InlineActions (P4_14)InlineControlFlow InlineDriver (P4 )InlineFunctions (P4 )InlineList (P4 )InlinePass (P4 )InlineSummary (P4 )INode (IR)InputSources (Util)InsertCompilerGeneratedStartState (P4V1)InsertReqDeclForIPSec (DPDK )InspectDpdkProgram Inspector InspectPnaProgram (TC )InspectPsaProgram (P4 )InstanceBase (P4 )InstantiateDirectCalls (P4 )Instantiation (P4 )IntegerHasher (Util::Detail)hash_vector_base::internal InternetChecksumAlgorithm (EBPF )InternetChecksumAlgorithmPNA (TC )IntrospectionGenerator (TC )IntrospectionInfo (TC )IOptionPragmaParser (P4 )IsDirectionMetadataUsed (DPDK )IsLikeLeftValue (P4 )IsMask (P4 )IsNonConstantArrayIndex (P4 )IsType (RTTI::Detail)IsValid (P4 )iterator_range (Util)IteratorEnumerator (Util)IterKeys IterValues
diff --git a/classhash__vector__base.html b/classhash__vector__base.html
index 6fe08ff9bd..0034cbc81a 100644
--- a/classhash__vector__base.html
+++ b/classhash__vector__base.html
@@ -131,7 +131,7 @@
diff --git a/hierarchy.js b/hierarchy.js
index 0a9c4d29e3..89a9a9442b 100644
--- a/hierarchy.js
+++ b/hierarchy.js
@@ -132,11 +132,15 @@ var hierarchy =
[ "HalfOpenRange< Unit, Order >", "struct_half_open_range.html", null ],
[ "hash_vector_base", "classhash__vector__base.html", [
[ "hvec_map< P4::ProgramPoint, P4::Definitions * >", "classhvec__map.html", null ],
+ [ "hvec_map< const IR::IDeclaration *, def_info_t >", "classhvec__map.html", null ],
+ [ "hvec_map< const IR::Node *, hvec_set >", "classhvec__map.html", null ],
[ "hvec_map< P4::loc_t, const P4::LocationSet * >", "classhvec__map.html", null ],
[ "hvec_map< const P4::BaseLocation *, const P4::ProgramPoints * >", "classhvec__map.html", null ],
[ "hvec_map< const IR::IDeclaration *, P4::StorageLocation * >", "classhvec__map.html", null ],
[ "hvec_map< cstring, const P4::StorageLocation * >", "classhvec__map.html", null ],
- [ "hvec_map< KEY, VAL, HASH, PRED, ALLOC >", "classhvec__map.html", null ]
+ [ "hvec_set< const loc_t * >", "classhvec__set.html", null ],
+ [ "hvec_map< KEY, VAL, HASH, PRED, ALLOC >", "classhvec__map.html", null ],
+ [ "hvec_set< KEY, HASH, PRED, ALLOC >", "classhvec__set.html", null ]
] ],
[ "hash_vector_base::internal", "classhash__vector__base.html#structhash__vector__base_1_1internal", null ],
[ "hash_vector_base::lookup_cache", "structhash__vector__base_1_1lookup__cache.html", null ],
@@ -357,14 +361,12 @@ var hierarchy =
[ "ordered_map< const IR::ConstructorCallExpression *, cstring >", "classordered__map.html", null ],
[ "ordered_map< const IR::Declaration_Instance *, P4::CallInfo * >", "classordered__map.html", null ],
[ "ordered_map< const IR::Declaration_Variable *, const cstring >", "classordered__map.html", null ],
- [ "ordered_map< const IR::IDeclaration *, def_info_t >", "classordered__map.html", null ],
[ "ordered_map< const IR::IDeclaration *, unsigned int >", "classordered__map.html", null ],
[ "ordered_map< const IR::ITypeVar *, const IR::Type * >", "classordered__map.html", null ],
[ "ordered_map< const IR::MethodCallExpression *, P4::FunctionSpecialization * >", "classordered__map.html", null ],
[ "ordered_map< const IR::Node *, block_t >", "classordered__map.html", null ],
[ "ordered_map< const IR::Node *, const IR::CompileTimeValue * >", "classordered__map.html", null ],
[ "ordered_map< const IR::Node *, const IR::P4Action * >", "classordered__map.html", null ],
- [ "ordered_map< const IR::Node *, ordered_set >", "classordered__map.html", null ],
[ "ordered_map< const IR::Node *, P4::SpecializationInfo * >", "classordered__map.html", null ],
[ "ordered_map< const IR::Node *, std::pair< gress_t, block_t > >", "classordered__map.html", null ],
[ "ordered_map< const IR::P4Action *, const IR::P4Action * >", "classordered__map.html", null ],
@@ -423,7 +425,6 @@ var hierarchy =
[ "ordered_set< BMV2::CFG::Node * >", "classordered__set.html", null ],
[ "ordered_set< const IR::FieldList * >", "classordered__set.html", null ],
[ "ordered_set< const IR::Parameter * >", "classordered__set.html", null ],
- [ "ordered_set< const loc_t * >", "classordered__set.html", null ],
[ "ordered_set< const P4::StorageLocation * >", "classordered__set.html", null ],
[ "ordered_set< cstring >", "classordered__set.html", null ],
[ "P4::AbstractParserDriver", "class_p4_1_1_abstract_parser_driver.html", [
@@ -1134,6 +1135,7 @@ var hierarchy =
[ "std::hash< ClosedRange< Unit, Order > >", "structstd_1_1hash_3_01_closed_range_3_01_unit_00_01_order_01_4_01_4.html", null ],
[ "std::hash< cstring >", "structstd_1_1hash_3_01cstring_01_4.html", null ],
[ "std::hash< HalfOpenRange< Unit, Order > >", "structstd_1_1hash_3_01_half_open_range_3_01_unit_00_01_order_01_4_01_4.html", null ],
+ [ "std::hash< P4::ComputeDefUse::loc_t >", "structstd_1_1hash_3_01_p4_1_1_compute_def_use_1_1loc__t_01_4.html", null ],
[ "std::hash< P4::loc_t >", "structstd_1_1hash_3_01_p4_1_1loc__t_01_4.html", null ],
[ "std::hash< P4::ProgramPoint >", "structstd_1_1hash_3_01_p4_1_1_program_point_01_4.html", null ],
[ "std::hash< std::pair< T1, T2 > >", "structstd_1_1hash_3_01std_1_1pair_3_01_t1_00_01_t2_01_4_01_4.html", null ],
diff --git a/hvec__map_8h_source.html b/hvec__map_8h_source.html
index 2f9f3cd393..7fabc455b5 100644
--- a/hvec__map_8h_source.html
+++ b/hvec__map_8h_source.html
@@ -301,176 +301,189 @@
-
- 179 VAL &operator[](
const KEY &k) {
- 180 size_t idx = hv_insert(&k);
- 181 if (idx >= data.size()) {
- 182 data.emplace_back(k, VAL());
- 183 return data.back().second;
-
-
-
- 187 const_cast< KEY &
> (data[idx].first) = k;
- 188 data[idx].second = VAL();
-
- 190 return data[idx].second;
-
-
- 193 VAL &operator[](KEY &&k) {
- 194 size_t idx = hv_insert(&k);
- 195 if (idx >= data.size()) {
- 196 data.emplace_back(std::move(k), VAL());
- 197 return data.back().second;
-
-
-
- 201 const_cast< KEY &
> (data[idx].first) = std::move(k);
- 202 data[idx].second = VAL();
-
- 204 return data[idx].second;
-
-
-
-
- 209 template <
typename ... VV>
- 210 std::pair<iterator, bool> emplace(
const KEY &k, VV &&...v) {
- 211 bool new_key =
false ;
- 212 size_t idx = hv_insert(&k);
- 213 if (idx >= data.size()) {
-
- 215 data.emplace_back(std::piecewise_construct_t(), std::forward_as_tuple(k),
- 216 std::forward_as_tuple(std::forward<VV>(v)...));
-
-
- 219 if ((new_key = erased[idx])) {
-
- 221 const_cast< KEY &
> (data[idx].first) = k;
- 222 data[idx].second = VAL(std::forward<VV>(v)...);
-
- 224 data[idx].second = VAL(std::forward<VV>(v)...);
-
-
- 227 return std::make_pair(iterator(*
this , idx), new_key);
-
- 229 template <
typename ... VV>
- 230 std::pair<iterator, bool> emplace(KEY &&k, VV &&...v) {
- 231 bool new_key =
false ;
- 232 size_t idx = hv_insert(&k);
- 233 if (idx >= data.size()) {
-
- 235 data.emplace_back(std::piecewise_construct_t(), std::forward_as_tuple(std::move(k)),
- 236 std::forward_as_tuple(std::forward<VV>(v)...));
-
- 238 }
else if ((new_key = erased[idx])) {
-
- 240 const_cast< KEY &
> (data[idx].first) = std::move(k);
- 241 data[idx].second = VAL(std::forward<VV>(v)...);
-
- 243 return std::make_pair(iterator(*
this , idx), new_key);
-
- 245 std::pair<iterator, bool> insert(
const value_type &v) {
- 246 bool new_key =
false ;
- 247 size_t idx = hv_insert(&v.first);
- 248 if (idx >= data.size()) {
-
-
-
- 252 }
else if ((new_key = erased[idx])) {
-
- 254 const_cast< KEY &
> (data[idx].first) = v.first;
- 255 data[idx].second = v.second;
-
- 257 return std::make_pair(iterator(*
this , idx), new_key);
-
- 259 template <
typename InputIterator>
- 260 void insert(InputIterator first, InputIterator last) {
- 261 for (; first != last; ++first) insert(*first);
-
- 263 void insert(std::initializer_list<value_type> vl) {
return insert(vl.begin(), vl.end()); }
- 264 template <
class HVM,
class VT>
- 265 _iter<HVM, VT> erase(_iter<HVM, VT> it) {
- 266 BUG_CHECK(
this == it.self,
"incorrect iterator for hvec_map::erase" );
-
-
-
-
- 271 const_cast< KEY &
> (data[it.idx].first) = KEY();
- 272 data[it.idx].second = VAL();
-
-
-
-
- 277 size_t erase(
const KEY &k) {
- 278 size_t idx = remove(&k);
- 279 if (idx + 1 == 0)
return 0;
- 280 if (idx < data.size()) {
- 281 const_cast< KEY &
> (data[idx].first) = KEY();
- 282 data[idx].second = VAL();
-
-
-
-
- 287 using hash_vector_base::dump;
-
-
-
- 291 std::vector<value_type, ALLOC> data;
- 292 size_t hashfn(
const void *a)
const override {
return hf(*
static_cast< const KEY *
> (a)); }
- 293 bool cmpfn(
const void *a,
const void *b)
const override {
- 294 return eql(*
static_cast< const KEY *
> (a), *
static_cast< const KEY *
> (b));
-
- 296 bool cmpfn(
const void *a,
size_t b)
const override {
- 297 return eql(*
static_cast< const KEY *
> (a), data[b].first);
+ 178 VAL &at(
const KEY &k) {
+
+ 180 size_t idx = hash_vector_base::find(&k, &cache);
+ 181 if (!idx || erased[idx - 1])
throw std::out_of_range(
"hvec_map::at" );
+ 182 return data[idx - 1].second;
+
+ 184 const VAL &at(
const KEY &k)
const {
+
+ 186 size_t idx = hash_vector_base::find(&k, &cache);
+ 187 if (!idx || erased[idx - 1])
throw std::out_of_range(
"hvec_map::at" );
+ 188 return data[idx - 1].second;
+
+
+
+ 192 VAL &operator[](
const KEY &k) {
+ 193 size_t idx = hv_insert(&k);
+ 194 if (idx >= data.size()) {
+ 195 data.emplace_back(k, VAL());
+ 196 return data.back().second;
+
+
+
+ 200 const_cast< KEY &
> (data[idx].first) = k;
+ 201 data[idx].second = VAL();
+
+ 203 return data[idx].second;
+
+
+ 206 VAL &operator[](KEY &&k) {
+ 207 size_t idx = hv_insert(&k);
+ 208 if (idx >= data.size()) {
+ 209 data.emplace_back(std::move(k), VAL());
+ 210 return data.back().second;
+
+
+
+ 214 const_cast< KEY &
> (data[idx].first) = std::move(k);
+ 215 data[idx].second = VAL();
+
+ 217 return data[idx].second;
+
+
+
+
+ 222 template <
typename ... VV>
+ 223 std::pair<iterator, bool> emplace(
const KEY &k, VV &&...v) {
+ 224 bool new_key =
false ;
+ 225 size_t idx = hv_insert(&k);
+ 226 if (idx >= data.size()) {
+
+ 228 data.emplace_back(std::piecewise_construct_t(), std::forward_as_tuple(k),
+ 229 std::forward_as_tuple(std::forward<VV>(v)...));
+
+
+ 232 if ((new_key = erased[idx])) {
+
+ 234 const_cast< KEY &
> (data[idx].first) = k;
+ 235 data[idx].second = VAL(std::forward<VV>(v)...);
+
+ 237 data[idx].second = VAL(std::forward<VV>(v)...);
+
+
+ 240 return std::make_pair(iterator(*
this , idx), new_key);
+
+ 242 template <
typename ... VV>
+ 243 std::pair<iterator, bool> emplace(KEY &&k, VV &&...v) {
+ 244 bool new_key =
false ;
+ 245 size_t idx = hv_insert(&k);
+ 246 if (idx >= data.size()) {
+
+ 248 data.emplace_back(std::piecewise_construct_t(), std::forward_as_tuple(std::move(k)),
+ 249 std::forward_as_tuple(std::forward<VV>(v)...));
+
+ 251 }
else if ((new_key = erased[idx])) {
+
+ 253 const_cast< KEY &
> (data[idx].first) = std::move(k);
+ 254 data[idx].second = VAL(std::forward<VV>(v)...);
+
+ 256 return std::make_pair(iterator(*
this , idx), new_key);
+
+ 258 std::pair<iterator, bool> insert(
const value_type &v) {
+ 259 bool new_key =
false ;
+ 260 size_t idx = hv_insert(&v.first);
+ 261 if (idx >= data.size()) {
+
+
+
+ 265 }
else if ((new_key = erased[idx])) {
+
+ 267 const_cast< KEY &
> (data[idx].first) = v.first;
+ 268 data[idx].second = v.second;
+
+ 270 return std::make_pair(iterator(*
this , idx), new_key);
+
+ 272 template <
typename InputIterator>
+ 273 void insert(InputIterator first, InputIterator last) {
+ 274 for (; first != last; ++first) insert(*first);
+
+ 276 void insert(std::initializer_list<value_type> vl) {
return insert(vl.begin(), vl.end()); }
+ 277 template <
class HVM,
class VT>
+ 278 _iter<HVM, VT> erase(_iter<HVM, VT> it) {
+ 279 BUG_CHECK(
this == it.self,
"incorrect iterator for hvec_map::erase" );
+
+
+
+
+ 284 const_cast< KEY &
> (data[it.idx].first) = KEY();
+ 285 data[it.idx].second = VAL();
+
+
+
+
+ 290 size_t erase(
const KEY &k) {
+ 291 size_t idx = remove(&k);
+ 292 if (idx + 1 == 0)
return 0;
+ 293 if (idx < data.size()) {
+ 294 const_cast< KEY &
> (data[idx].first) = KEY();
+ 295 data[idx].second = VAL();
+
+
- 299 const void *getkey(uint32_t i)
const override {
return &data[i].first; }
- 300 void *getval(uint32_t i)
override {
return &data[i].second; }
- 301 uint32_t limit()
override {
return data.size(); }
- 302 void resizedata(
size_t sz)
override { data.resize(sz); }
- 303 void moveentry(
size_t to,
size_t from)
override {
-
- 305 data[to].~value_type();
- 306 new (&data[to]) value_type(std::move(data[from]));
-
-
+
+ 300 using hash_vector_base::dump;
+
+
+
+ 304 std::vector<value_type, ALLOC> data;
+ 305 size_t hashfn(
const void *a)
const override {
return hf(*
static_cast< const KEY *
> (a)); }
+ 306 bool cmpfn(
const void *a,
const void *b)
const override {
+ 307 return eql(*
static_cast< const KEY *
> (a), *
static_cast< const KEY *
> (b));
+
+ 309 bool cmpfn(
const void *a,
size_t b)
const override {
+ 310 return eql(*
static_cast< const KEY *
> (a), data[b].first);
+
+ 312 const void *getkey(uint32_t i)
const override {
return &data[i].first; }
+ 313 void *getval(uint32_t i)
override {
return &data[i].second; }
+ 314 uint32_t limit()
override {
return data.size(); }
+ 315 void resizedata(
size_t sz)
override { data.resize(sz); }
+ 316 void moveentry(
size_t to,
size_t from)
override {
+
+ 318 data[to].~value_type();
+ 319 new (&data[to]) value_type(std::move(data[from]));
+
+
-
- 310 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 312 auto it = m.find(key);
- 313 if (it != m.end())
return it->second;
-
-
-
- 317 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 319 auto it = m.find(key);
- 320 if (it != m.end())
return &it->second;
-
-
-
- 324 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 326 auto it = m.find(key);
- 327 if (it != m.end())
return &it->second;
-
-
-
- 331 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 333 return m ? get(*m, key, def) : def;
-
-
- 336 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 338 return m ? getref(*m, key) : 0;
-
-
- 341 template <
class K,
class T,
class V,
class Comp,
class Alloc>
-
- 343 return m ? getref(*m, key) : 0;
-
-
-
+
+ 323 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 325 auto it = m.find(key);
+ 326 if (it != m.end())
return it->second;
+
+
+
+ 330 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 332 auto it = m.find(key);
+ 333 if (it != m.end())
return &it->second;
+
+
+
+ 337 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 339 auto it = m.find(key);
+ 340 if (it != m.end())
return &it->second;
+
+
+
+ 344 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 346 return m ? get(*m, key, def) : def;
+
+
+ 349 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 351 return m ? getref(*m, key) : 0;
+
+
+ 354 template <
class K,
class T,
class V,
class Comp,
class Alloc>
+
+ 356 return m ? getref(*m, key) : 0;
+
+
+
diff --git a/hvec__set_8h_source.html b/hvec__set_8h_source.html
new file mode 100644
index 0000000000..704103910d
--- /dev/null
+++ b/hvec__set_8h_source.html
@@ -0,0 +1,397 @@
+
+
+
+
+
+
+
+
+P4C: hvec_set.h Source File
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ P4C
+
+ The P4 Compiler
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
17 #ifndef LIB_HVEC_SET_H_
+
18 #define LIB_HVEC_SET_H_
+
+
20 #include <initializer_list>
+
+
+
+
24 #include "exceptions.h"
+
+
+
27 template <
class KEY,
class HASH = std::hash<KEY>,
class PRED = std::equal_to<KEY>,
+
28 class ALLOC = std::allocator<KEY>>
+
+
+
+
+
+
+
34 typedef const KEY value_type;
+
+
36 typedef PRED key_equal;
+
37 typedef ALLOC allocator_type;
+
38 typedef value_type *pointer, *const_pointer, &reference, &const_reference;
+
+
+
41 explicit hvec_set (
size_t icap = 0,
const hasher &hf = hasher(),
+
42 const key_equal &eql = key_equal(),
+
43 const allocator_type &a = allocator_type())
+
+
+
+
+
+
+
50 if (
this != std::addressof(that)) {
+
+
+
+
+
55 data.reserve(that.size());
+
56 insert(that.begin(), that.end());
+
+
+
+
+
+
+
+
64 hvec_set (ITER begin, ITER end,
const hasher &hf = hasher(),
const key_equal &eql = key_equal(),
+
65 const allocator_type &a = allocator_type())
+
+
67 data.reserve(end - begin);
+
68 for (
auto it = begin; it != end; ++it) insert(*it);
+
+
70 hvec_set (std::initializer_list<value_type> il,
const hasher &hf = hasher(),
+
71 const key_equal &eql = key_equal(),
const allocator_type &a = allocator_type())
+
+
73 data.reserve(il.size());
+
74 for (
auto &i : il) insert(i);
+
+
+
+
78 template <
class HVM,
class VT>
+
+
+
+
+
+
84 _iter(HVM &s,
size_t i) : self(&s), idx(i) {}
+
+
+
87 using value_type = VT;
+
88 using difference_type = ssize_t;
+
89 using pointer =
typename HVM::pointer;
+
90 using reference =
typename HVM::reference;
+
91 using iterator_category = std::bidirectional_iterator_tag;
+
92 _iter(
const _iter &) =
default ;
+
93 _iter &operator=(
const _iter &a) {
+
+
+
+
+
98 value_type &operator*()
const {
return self->data[idx]; }
+
99 value_type *operator->()
const {
return &self->data[idx]; }
+
100 _iter &operator++() {
+
+
+
103 }
while (self->erased[idx]);
+
+
+
106 _iter &operator--() {
+
+
+
109 }
while (self->erased[idx]);
+
+
+
112 _iter operator++(
int ) {
+
+
+
+
+
117 _iter operator--(
int ) {
+
+
+
+
+
122 bool operator==(
const _iter &a)
const {
return self == a.self && idx == a.idx; }
+
123 bool operator!=(
const _iter &a)
const {
return self != a.self || idx != a.idx; }
+
124 operator _iter<const HVM, const VT>()
const {
+
125 return _iter<const HVM, const VT>(*self, idx);
+
+
+
+
+
130 typedef _iter<hvec_set, value_type> iterator;
+
131 typedef _iter<const hvec_set, const value_type> const_iterator;
+
132 iterator begin() {
return iterator(*
this , erased.ffz()); }
+
133 iterator end() {
return iterator(*
this , data.size()); }
+
134 const_iterator begin()
const {
return const_iterator(*
this , erased.ffz()); }
+
135 const_iterator end()
const {
return const_iterator(*
this , data.size()); }
+
136 const_iterator cbegin()
const {
return const_iterator(*
this , erased.ffz()); }
+
137 const_iterator cend()
const {
return const_iterator(*
this , data.size()); }
+
138 value_type &front()
const {
return *begin(); }
+
139 value_type &back()
const {
+
+
+
+
+
144 bool empty()
const {
return inuse == 0; }
+
145 size_t size()
const {
return inuse; }
+
146 size_t max_size()
const {
return UINT32_MAX; }
+
147 bool operator==(
const hvec_set &a)
const {
+
148 if (inuse != a.inuse)
return false ;
+
+
+
151 if (el != *it++)
return false ;
+
+
+
154 bool operator!=(
const hvec_set &a)
const {
return !(*
this == a); }
+
+
156 hash_vector_base::clear();
+
+
+
+
160 iterator find(
const KEY &k) {
+
+
162 size_t idx = hash_vector_base::find(&k, &cache);
+
163 return idx ? iterator(*
this , idx - 1) : end();
+
+
165 const_iterator find(
const KEY &k)
const {
+
+
167 size_t idx = hash_vector_base::find(&k, &cache);
+
168 return idx ? const_iterator(*
this , idx - 1) : end();
+
+
170 size_t count(
const KEY &k)
const {
+
+
172 size_t idx = hash_vector_base::find(&k, &cache);
+
+
+
+
176 template <
typename ... KK>
+
177 std::pair<iterator, bool> emplace(KK &&...k) {
+
178 return insert(value_type(std::forward<KK>(k)...));
+
+
180 std::pair<iterator, bool> insert(
const value_type &v) {
+
181 bool new_key =
false ;
+
182 size_t idx = hv_insert(&v);
+
183 if (idx >= data.size()) {
+
+
+
+
187 }
else if ((new_key = erased[idx])) {
+
+
+
+
191 return std::make_pair(iterator(*
this , idx), new_key);
+
+
193 std::pair<iterator, bool> insert(value_type &&v) {
+
194 bool new_key =
false ;
+
195 size_t idx = hv_insert(&v);
+
196 if (idx >= data.size()) {
+
+
198 data.push_back(std::move(v));
+
+
200 }
else if ((new_key = erased[idx])) {
+
+
202 data[idx] = std::move(v);
+
+
204 return std::make_pair(iterator(*
this , idx), new_key);
+
+
+
207 template <
typename InputIterator>
+
208 void insert(InputIterator first, InputIterator last) {
+
209 for (; first != last; ++first) insert(*first);
+
+
211 void insert(std::initializer_list<value_type> vl) {
return insert(vl.begin(), vl.end()); }
+
212 template <
class HVM,
class VT>
+
213 _iter<HVM, VT> erase(_iter<HVM, VT> it) {
+
214 BUG_CHECK(
this == it.self,
"incorrect iterator for hvec_set::erase" );
+
+
+
+
+
219 data[it.idx] = KEY();
+
+
+
+
+
224 size_t erase(
const KEY &k) {
+
225 size_t idx = remove(&k);
+
226 if (idx + 1 == 0)
return 0;
+
227 if (idx < data.size()) {
+
+
+
+
+
+
233 using hash_vector_base::dump;
+
+
+
+
237 std::vector<KEY, ALLOC> data;
+
238 size_t hashfn(
const void *a)
const override {
return hf(*
static_cast< const KEY *
> (a)); }
+
239 bool cmpfn(
const void *a,
const void *b)
const override {
+
240 return eql(*
static_cast< const KEY *
> (a), *
static_cast< const KEY *
> (b));
+
+
242 bool cmpfn(
const void *a,
size_t b)
const override {
+
243 return eql(*
static_cast< const KEY *
> (a), data[b]);
+
+
245 const void *getkey(uint32_t i)
const override {
return &data[i]; }
+
246 void *getval(uint32_t)
override {
+
247 BUG(
"getval in set" );
+
+
+
250 uint32_t limit()
override {
return data.size(); }
+
251 void resizedata(
size_t sz)
override { data.resize(sz); }
+
252 void moveentry(
size_t to,
size_t from)
override { data[to] = data[from]; }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/inherit_graph_102.map b/inherit_graph_102.map
index 21c45f54ce..2ee9506b85 100644
--- a/inherit_graph_102.map
+++ b/inherit_graph_102.map
@@ -1,79 +1,79 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/inherit_graph_102.md5 b/inherit_graph_102.md5
index bee7143329..5d602dc149 100644
--- a/inherit_graph_102.md5
+++ b/inherit_graph_102.md5
@@ -1 +1 @@
-e2a3806d51e2d12f4ff8072aa3030552
\ No newline at end of file
+37bee39c13af5f758a1a5b1334e82120
\ No newline at end of file
diff --git a/inherit_graph_102.svg b/inherit_graph_102.svg
index 3acf0c586b..cea04772c8 100644
--- a/inherit_graph_102.svg
+++ b/inherit_graph_102.svg
@@ -27,9 +27,9 @@
-
+
Node0->Node1
-
+
@@ -45,9 +45,9 @@
-
+
Node0->Node2
-
+
@@ -63,9 +63,9 @@
-
+
Node0->Node3
-
+
@@ -81,9 +81,9 @@
-
+
Node0->Node4
-
+
@@ -99,9 +99,9 @@
-
+
Node0->Node28
-
+
@@ -117,9 +117,9 @@
-
+
Node0->Node29
-
+
@@ -135,9 +135,9 @@
-
+
Node0->Node30
-
+
@@ -154,9 +154,9 @@
-
+
Node0->Node31
-
+
@@ -172,9 +172,9 @@
-
+
Node0->Node32
-
+
@@ -190,9 +190,9 @@
-
+
Node0->Node33
-
+
@@ -208,9 +208,9 @@
-
+
Node0->Node34
-
+
@@ -226,9 +226,9 @@
-
+
Node0->Node35
-
+
@@ -245,9 +245,9 @@
-
+
Node0->Node36
-
+
@@ -263,9 +263,9 @@
-
+
Node0->Node37
-
+
@@ -281,9 +281,9 @@
-
+
Node0->Node38
-
+
@@ -299,9 +299,9 @@
-
+
Node4->Node5
-
+
@@ -317,9 +317,9 @@
-
+
Node4->Node11
-
+
@@ -336,9 +336,9 @@
-
+
Node4->Node27
-
+
@@ -354,9 +354,9 @@
-
+
Node5->Node6
-
+
@@ -372,9 +372,9 @@
-
+
Node5->Node7
-
+
@@ -390,9 +390,9 @@
-
+
Node5->Node8
-
+
@@ -408,9 +408,9 @@
-
+
Node5->Node9
-
+
@@ -426,9 +426,9 @@
-
+
Node5->Node10
-
+
@@ -445,9 +445,9 @@
-
+
Node11->Node12
-
+
@@ -463,9 +463,9 @@
-
+
Node11->Node13
-
+
@@ -481,9 +481,9 @@
-
+
Node11->Node14
-
+
@@ -499,9 +499,9 @@
-
+
Node11->Node15
-
+
@@ -518,9 +518,9 @@
-
+
Node11->Node16
-
+
@@ -537,9 +537,9 @@
-
+
Node11->Node17
-
+
@@ -555,9 +555,9 @@
-
+
Node11->Node18
-
+
@@ -574,9 +574,9 @@
-
+
Node11->Node19
-
+
@@ -592,9 +592,9 @@
-
+
Node11->Node24
-
+
@@ -610,9 +610,9 @@
-
+
Node11->Node25
-
+
@@ -628,9 +628,9 @@
-
+
Node11->Node26
-
+
@@ -646,9 +646,9 @@
-
+
Node19->Node20
-
+
@@ -665,9 +665,9 @@
-
+
Node19->Node21
-
+
@@ -683,9 +683,9 @@
-
+
Node19->Node22
-
+
@@ -701,9 +701,9 @@
-
+
Node19->Node23
-
+
diff --git a/inherit_graph_103.map b/inherit_graph_103.map
index b556215a5a..82c04e19c0 100644
--- a/inherit_graph_103.map
+++ b/inherit_graph_103.map
@@ -1,11 +1,11 @@
-
+
-
+
-
+
-
+
diff --git a/inherit_graph_103.md5 b/inherit_graph_103.md5
index f2c95b8cf5..9dc3d8f96f 100644
--- a/inherit_graph_103.md5
+++ b/inherit_graph_103.md5
@@ -1 +1 @@
-2ff6a9aad37f43f4bfac8d526e181f7c
\ No newline at end of file
+1d0e7a86a6c90844be783bb2150759e8
\ No newline at end of file
diff --git a/inherit_graph_103.svg b/inherit_graph_103.svg
index 62ae88edca..fd46f8be5f 100644
--- a/inherit_graph_103.svg
+++ b/inherit_graph_103.svg
@@ -27,9 +27,9 @@
-
+
Node0->Node1
-
+
@@ -45,9 +45,9 @@
-
+
Node0->Node2
-
+
@@ -63,9 +63,9 @@
-
+
Node0->Node3
-
+
@@ -81,9 +81,9 @@
-
+
Node0->Node4
-
+
diff --git a/inherit_graph_110.md5 b/inherit_graph_110.md5
index 074dca38fd..ee99dcde1d 100644
--- a/inherit_graph_110.md5
+++ b/inherit_graph_110.md5
@@ -1 +1 @@
-fcb2fb068af6e26e6cf7c63125a01cb7
\ No newline at end of file
+f45b361d94a9f0d8f91b4c5ffc98c866
\ No newline at end of file
diff --git a/inherit_graph_110.svg b/inherit_graph_110.svg
index c4588c0ed4..0b97441587 100644
--- a/inherit_graph_110.svg
+++ b/inherit_graph_110.svg
@@ -15,7 +15,7 @@
ordered_map< const
IR::IDeclaration *,
- def_info_t >
+ unsigned int >
diff --git a/inherit_graph_111.md5 b/inherit_graph_111.md5
index ee99dcde1d..22d7c5c370 100644
--- a/inherit_graph_111.md5
+++ b/inherit_graph_111.md5
@@ -1 +1 @@
-f45b361d94a9f0d8f91b4c5ffc98c866
\ No newline at end of file
+a28026f6f5bbc71ee19a3ebdbca686a5
\ No newline at end of file
diff --git a/inherit_graph_111.svg b/inherit_graph_111.svg
index 0b97441587..c3f2e6a298 100644
--- a/inherit_graph_111.svg
+++ b/inherit_graph_111.svg
@@ -14,8 +14,8 @@
ordered_map< const
- IR::IDeclaration *,
- unsigned int >
+ IR::ITypeVar *, const
+ IR::Type * >
diff --git a/inherit_graph_112.map b/inherit_graph_112.map
index 33359e8589..080a8b76d6 100644
--- a/inherit_graph_112.map
+++ b/inherit_graph_112.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_112.md5 b/inherit_graph_112.md5
index 22d7c5c370..4d412e88f2 100644
--- a/inherit_graph_112.md5
+++ b/inherit_graph_112.md5
@@ -1 +1 @@
-a28026f6f5bbc71ee19a3ebdbca686a5
\ No newline at end of file
+7e8ce51f6a38b15d252363a4f14b7ecf
\ No newline at end of file
diff --git a/inherit_graph_112.svg b/inherit_graph_112.svg
index c3f2e6a298..212a5d5544 100644
--- a/inherit_graph_112.svg
+++ b/inherit_graph_112.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::ITypeVar *, const
- IR::Type * >
+ IR::MethodCallExpression
+ *, P4::FunctionSpecialization * >
diff --git a/inherit_graph_113.map b/inherit_graph_113.map
index 080a8b76d6..e97f650d31 100644
--- a/inherit_graph_113.map
+++ b/inherit_graph_113.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_113.md5 b/inherit_graph_113.md5
index 4d412e88f2..c98aac8045 100644
--- a/inherit_graph_113.md5
+++ b/inherit_graph_113.md5
@@ -1 +1 @@
-7e8ce51f6a38b15d252363a4f14b7ecf
\ No newline at end of file
+dec3d2a9279d4f19677fb18ca6756487
\ No newline at end of file
diff --git a/inherit_graph_113.svg b/inherit_graph_113.svg
index 212a5d5544..13da1334cf 100644
--- a/inherit_graph_113.svg
+++ b/inherit_graph_113.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::MethodCallExpression
- *, P4::FunctionSpecialization * >
+
+ordered_map< const
+ IR::Node *, block_t >
diff --git a/inherit_graph_114.map b/inherit_graph_114.map
index e97f650d31..2c66df0637 100644
--- a/inherit_graph_114.map
+++ b/inherit_graph_114.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_114.md5 b/inherit_graph_114.md5
index c98aac8045..d94338edc7 100644
--- a/inherit_graph_114.md5
+++ b/inherit_graph_114.md5
@@ -1 +1 @@
-dec3d2a9279d4f19677fb18ca6756487
\ No newline at end of file
+560f96029646057e5878b4d83f0227ef
\ No newline at end of file
diff --git a/inherit_graph_114.svg b/inherit_graph_114.svg
index 13da1334cf..a9a727c3e5 100644
--- a/inherit_graph_114.svg
+++ b/inherit_graph_114.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::Node *, block_t >
+
+ordered_map< const
+ IR::Node *, const IR
+::CompileTimeValue * >
diff --git a/inherit_graph_115.map b/inherit_graph_115.map
index 2c66df0637..33359e8589 100644
--- a/inherit_graph_115.map
+++ b/inherit_graph_115.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_115.md5 b/inherit_graph_115.md5
index d94338edc7..e3066d785b 100644
--- a/inherit_graph_115.md5
+++ b/inherit_graph_115.md5
@@ -1 +1 @@
-560f96029646057e5878b4d83f0227ef
\ No newline at end of file
+cf5a2ea62e4ae4b9cdbc0946c0102a24
\ No newline at end of file
diff --git a/inherit_graph_115.svg b/inherit_graph_115.svg
index a9a727c3e5..af083d3997 100644
--- a/inherit_graph_115.svg
+++ b/inherit_graph_115.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
IR::Node *, const IR
-::CompileTimeValue * >
+::P4Action * >
diff --git a/inherit_graph_116.map b/inherit_graph_116.map
index 33359e8589..d8a8e732e9 100644
--- a/inherit_graph_116.map
+++ b/inherit_graph_116.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_116.md5 b/inherit_graph_116.md5
index e3066d785b..1a235feef8 100644
--- a/inherit_graph_116.md5
+++ b/inherit_graph_116.md5
@@ -1 +1 @@
-cf5a2ea62e4ae4b9cdbc0946c0102a24
\ No newline at end of file
+5a382c132e3f3efc41bf54e9e72fc745
\ No newline at end of file
diff --git a/inherit_graph_116.svg b/inherit_graph_116.svg
index af083d3997..10672d0097 100644
--- a/inherit_graph_116.svg
+++ b/inherit_graph_116.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::Node *, const IR
-::P4Action * >
+ IR::Node *, P4::Specialization
+Info * >
diff --git a/inherit_graph_117.map b/inherit_graph_117.map
index f21b6fdb70..1397f0ae8d 100644
--- a/inherit_graph_117.map
+++ b/inherit_graph_117.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_117.md5 b/inherit_graph_117.md5
index 008d26ca93..901bc641dd 100644
--- a/inherit_graph_117.md5
+++ b/inherit_graph_117.md5
@@ -1 +1 @@
-01684bc22b5201580ac67db31aa54e0f
\ No newline at end of file
+c1e108890c540e395157bc1b1aeebd72
\ No newline at end of file
diff --git a/inherit_graph_117.svg b/inherit_graph_117.svg
index 917ef373b0..b1619512c4 100644
--- a/inherit_graph_117.svg
+++ b/inherit_graph_117.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::Node *, ordered_set >
+
+ordered_map< const
+ IR::Node *, std::pair
+< gress_t, block_t > >
diff --git a/inherit_graph_118.map b/inherit_graph_118.map
index d8a8e732e9..33359e8589 100644
--- a/inherit_graph_118.map
+++ b/inherit_graph_118.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_118.md5 b/inherit_graph_118.md5
index 1a235feef8..5fda72d9a0 100644
--- a/inherit_graph_118.md5
+++ b/inherit_graph_118.md5
@@ -1 +1 @@
-5a382c132e3f3efc41bf54e9e72fc745
\ No newline at end of file
+86912c7e514d3062c71c983602b0f54e
\ No newline at end of file
diff --git a/inherit_graph_118.svg b/inherit_graph_118.svg
index 10672d0097..9f29723115 100644
--- a/inherit_graph_118.svg
+++ b/inherit_graph_118.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::Node *, P4::Specialization
-Info * >
+ IR::P4Action *, const
+ IR::P4Action * >
diff --git a/inherit_graph_119.map b/inherit_graph_119.map
index 1397f0ae8d..33359e8589 100644
--- a/inherit_graph_119.map
+++ b/inherit_graph_119.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_119.md5 b/inherit_graph_119.md5
index 901bc641dd..d58dc4db18 100644
--- a/inherit_graph_119.md5
+++ b/inherit_graph_119.md5
@@ -1 +1 @@
-c1e108890c540e395157bc1b1aeebd72
\ No newline at end of file
+f63da10c8c8a50c7d61fa195913f9aa0
\ No newline at end of file
diff --git a/inherit_graph_119.svg b/inherit_graph_119.svg
index b1619512c4..8f9b7d1e29 100644
--- a/inherit_graph_119.svg
+++ b/inherit_graph_119.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::Node *, std::pair
-< gress_t, block_t > >
+ IR::P4Action *, const
+ IR::P4Control * >
diff --git a/inherit_graph_120.map b/inherit_graph_120.map
index 33359e8589..8ba0ea5dd9 100644
--- a/inherit_graph_120.map
+++ b/inherit_graph_120.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_120.md5 b/inherit_graph_120.md5
index 5fda72d9a0..b83fcb74ed 100644
--- a/inherit_graph_120.md5
+++ b/inherit_graph_120.md5
@@ -1 +1 @@
-86912c7e514d3062c71c983602b0f54e
\ No newline at end of file
+090318718686b97c09005940c792cb4f
\ No newline at end of file
diff --git a/inherit_graph_120.svg b/inherit_graph_120.svg
index 9f29723115..52618aa29a 100644
--- a/inherit_graph_120.svg
+++ b/inherit_graph_120.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::P4Action *, const
- IR::P4Action * >
+
+ordered_map< const
+ IR::P4Action *, unsigned >
diff --git a/inherit_graph_121.map b/inherit_graph_121.map
index 33359e8589..e348e485fb 100644
--- a/inherit_graph_121.map
+++ b/inherit_graph_121.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_121.md5 b/inherit_graph_121.md5
index d58dc4db18..5400b8624f 100644
--- a/inherit_graph_121.md5
+++ b/inherit_graph_121.md5
@@ -1 +1 @@
-f63da10c8c8a50c7d61fa195913f9aa0
\ No newline at end of file
+4bddd8398772e31601c46b434a1317c8
\ No newline at end of file
diff --git a/inherit_graph_121.svg b/inherit_graph_121.svg
index 8f9b7d1e29..dcb3c3c80d 100644
--- a/inherit_graph_121.svg
+++ b/inherit_graph_121.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::P4Action *, const
- IR::P4Control * >
+
+ordered_map< const
+ IR::P4Control *, cstring >
diff --git a/inherit_graph_122.map b/inherit_graph_122.map
index 8ba0ea5dd9..b44b169f39 100644
--- a/inherit_graph_122.map
+++ b/inherit_graph_122.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_122.md5 b/inherit_graph_122.md5
index b83fcb74ed..0fc43a8467 100644
--- a/inherit_graph_122.md5
+++ b/inherit_graph_122.md5
@@ -1 +1 @@
-090318718686b97c09005940c792cb4f
\ No newline at end of file
+a4b9c6d0385193faa194c4256043dfc4
\ No newline at end of file
diff --git a/inherit_graph_122.svg b/inherit_graph_122.svg
index 52618aa29a..68506c23b7 100644
--- a/inherit_graph_122.svg
+++ b/inherit_graph_122.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::P4Action *, unsigned >
+ IR::P4Parser *, cstring >
diff --git a/inherit_graph_123.map b/inherit_graph_123.map
index e348e485fb..2f4f2c131b 100644
--- a/inherit_graph_123.map
+++ b/inherit_graph_123.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_123.md5 b/inherit_graph_123.md5
index 5400b8624f..22f63e3b12 100644
--- a/inherit_graph_123.md5
+++ b/inherit_graph_123.md5
@@ -1 +1 @@
-4bddd8398772e31601c46b434a1317c8
\ No newline at end of file
+325c50b8dbd66a124d382bf3148afd6a
\ No newline at end of file
diff --git a/inherit_graph_123.svg b/inherit_graph_123.svg
index dcb3c3c80d..42854f9931 100644
--- a/inherit_graph_123.svg
+++ b/inherit_graph_123.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::P4Control *, cstring >
+ IR::Parameter *, unsigned >
diff --git a/inherit_graph_124.map b/inherit_graph_124.map
index b44b169f39..33359e8589 100644
--- a/inherit_graph_124.map
+++ b/inherit_graph_124.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_124.md5 b/inherit_graph_124.md5
index 0fc43a8467..9bbeb0aec5 100644
--- a/inherit_graph_124.md5
+++ b/inherit_graph_124.md5
@@ -1 +1 @@
-a4b9c6d0385193faa194c4256043dfc4
\ No newline at end of file
+60928381bb436bde529bfab3211a3e9c
\ No newline at end of file
diff --git a/inherit_graph_124.svg b/inherit_graph_124.svg
index 68506c23b7..40b4eca923 100644
--- a/inherit_graph_124.svg
+++ b/inherit_graph_124.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::P4Parser *, cstring >
+
+ordered_map< const
+ IR::Type *, const IR
+::Type_Struct * >
diff --git a/inherit_graph_125.map b/inherit_graph_125.map
index 2f4f2c131b..bb8e4bc86a 100644
--- a/inherit_graph_125.map
+++ b/inherit_graph_125.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_125.md5 b/inherit_graph_125.md5
index 22f63e3b12..1880910db9 100644
--- a/inherit_graph_125.md5
+++ b/inherit_graph_125.md5
@@ -1 +1 @@
-325c50b8dbd66a124d382bf3148afd6a
\ No newline at end of file
+7f6ce393dff95981910c44c9fe923d18
\ No newline at end of file
diff --git a/inherit_graph_125.svg b/inherit_graph_125.svg
index 42854f9931..e681b791a3 100644
--- a/inherit_graph_125.svg
+++ b/inherit_graph_125.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::Parameter *, unsigned >
+
+ordered_map< const
+ IR::Type *, P4::StructType
+Replacement< IR::Type_Struct > * >
diff --git a/inherit_graph_126.map b/inherit_graph_126.map
index 33359e8589..8b5a9f2b10 100644
--- a/inherit_graph_126.map
+++ b/inherit_graph_126.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_126.md5 b/inherit_graph_126.md5
index 9bbeb0aec5..c18f1a56a7 100644
--- a/inherit_graph_126.md5
+++ b/inherit_graph_126.md5
@@ -1 +1 @@
-60928381bb436bde529bfab3211a3e9c
\ No newline at end of file
+24eeab8bd7151991e10b44702743bab8
\ No newline at end of file
diff --git a/inherit_graph_126.svg b/inherit_graph_126.svg
index 40b4eca923..4b9b53d65c 100644
--- a/inherit_graph_126.svg
+++ b/inherit_graph_126.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::Type *, const IR
-::Type_Struct * >
+ IR::Type_Enum *, P4
+::EnumRepresentation * >
diff --git a/inherit_graph_127.map b/inherit_graph_127.map
index bb8e4bc86a..d198c75dd0 100644
--- a/inherit_graph_127.map
+++ b/inherit_graph_127.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_127.md5 b/inherit_graph_127.md5
index 1880910db9..5ca1af1092 100644
--- a/inherit_graph_127.md5
+++ b/inherit_graph_127.md5
@@ -1 +1 @@
-7f6ce393dff95981910c44c9fe923d18
\ No newline at end of file
+6bc066f912f7e841bf44d7b8d99adee8
\ No newline at end of file
diff --git a/inherit_graph_127.svg b/inherit_graph_127.svg
index e681b791a3..0dc5e894a4 100644
--- a/inherit_graph_127.svg
+++ b/inherit_graph_127.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< const
- IR::Type *, P4::StructType
-Replacement< IR::Type_Struct > * >
+ IR::Type_Specialized
+ *, P4::TypeSpecialization * >
diff --git a/inherit_graph_128.map b/inherit_graph_128.map
index 8b5a9f2b10..59b470660a 100644
--- a/inherit_graph_128.map
+++ b/inherit_graph_128.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_128.md5 b/inherit_graph_128.md5
index c18f1a56a7..65cd465ca4 100644
--- a/inherit_graph_128.md5
+++ b/inherit_graph_128.md5
@@ -1 +1 @@
-24eeab8bd7151991e10b44702743bab8
\ No newline at end of file
+93c830a8a16ca8cab3b34863b23d6976
\ No newline at end of file
diff --git a/inherit_graph_128.svg b/inherit_graph_128.svg
index 4b9b53d65c..da0a410241 100644
--- a/inherit_graph_128.svg
+++ b/inherit_graph_128.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::Type_Enum *, P4
-::EnumRepresentation * >
+
+ordered_map< cstring,
+ const IR::Declaration
+_Instance * >
diff --git a/inherit_graph_129.map b/inherit_graph_129.map
index d198c75dd0..59b470660a 100644
--- a/inherit_graph_129.map
+++ b/inherit_graph_129.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_129.md5 b/inherit_graph_129.md5
index 5ca1af1092..47dc1427de 100644
--- a/inherit_graph_129.md5
+++ b/inherit_graph_129.md5
@@ -1 +1 @@
-6bc066f912f7e841bf44d7b8d99adee8
\ No newline at end of file
+44a58bcc7b03f02dab8b264723ce8bea
\ No newline at end of file
diff --git a/inherit_graph_129.svg b/inherit_graph_129.svg
index 0dc5e894a4..91998f1fce 100644
--- a/inherit_graph_129.svg
+++ b/inherit_graph_129.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
-ordered_map< const
- IR::Type_Specialized
- *, P4::TypeSpecialization * >
+
+ordered_map< cstring,
+ const IR::Declaration
+_Variable * >
diff --git a/inherit_graph_130.map b/inherit_graph_130.map
index 59b470660a..511507c6e5 100644
--- a/inherit_graph_130.map
+++ b/inherit_graph_130.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_130.md5 b/inherit_graph_130.md5
index 65cd465ca4..98c04a077c 100644
--- a/inherit_graph_130.md5
+++ b/inherit_graph_130.md5
@@ -1 +1 @@
-93c830a8a16ca8cab3b34863b23d6976
\ No newline at end of file
+3290acf7627b8c50cab4fe2aa0f68af2
\ No newline at end of file
diff --git a/inherit_graph_130.svg b/inherit_graph_130.svg
index da0a410241..d292bb1eef 100644
--- a/inherit_graph_130.svg
+++ b/inherit_graph_130.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- const IR::Declaration
-_Instance * >
+
+ordered_map< cstring,
+ const IR::Member * >
diff --git a/inherit_graph_131.map b/inherit_graph_131.map
index 59b470660a..511507c6e5 100644
--- a/inherit_graph_131.map
+++ b/inherit_graph_131.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_131.md5 b/inherit_graph_131.md5
index 47dc1427de..f042ed712b 100644
--- a/inherit_graph_131.md5
+++ b/inherit_graph_131.md5
@@ -1 +1 @@
-44a58bcc7b03f02dab8b264723ce8bea
\ No newline at end of file
+1705cdb6ba7452eb0d50df5fa6ee18fb
\ No newline at end of file
diff --git a/inherit_graph_131.svg b/inherit_graph_131.svg
index 91998f1fce..9978d77b5d 100644
--- a/inherit_graph_131.svg
+++ b/inherit_graph_131.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- const IR::Declaration
-_Variable * >
+
+ordered_map< cstring,
+ const IR::P4Action * >
diff --git a/inherit_graph_132.map b/inherit_graph_132.map
index 511507c6e5..4a0f63cb13 100644
--- a/inherit_graph_132.map
+++ b/inherit_graph_132.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_132.md5 b/inherit_graph_132.md5
index 98c04a077c..86a0aa6fbf 100644
--- a/inherit_graph_132.md5
+++ b/inherit_graph_132.md5
@@ -1 +1 @@
-3290acf7627b8c50cab4fe2aa0f68af2
\ No newline at end of file
+58cde94aa6cd743dad3e8945a72ce232
\ No newline at end of file
diff --git a/inherit_graph_132.svg b/inherit_graph_132.svg
index d292bb1eef..c36ab77a67 100644
--- a/inherit_graph_132.svg
+++ b/inherit_graph_132.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Member * >
+ const IR::P4Control * >
diff --git a/inherit_graph_133.md5 b/inherit_graph_133.md5
index f042ed712b..2bdd9799ab 100644
--- a/inherit_graph_133.md5
+++ b/inherit_graph_133.md5
@@ -1 +1 @@
-1705cdb6ba7452eb0d50df5fa6ee18fb
\ No newline at end of file
+1fe60ec56c4f6f9ba21ed9f8820ad286
\ No newline at end of file
diff --git a/inherit_graph_133.svg b/inherit_graph_133.svg
index 9978d77b5d..f3e01805f8 100644
--- a/inherit_graph_133.svg
+++ b/inherit_graph_133.svg
@@ -14,7 +14,7 @@
ordered_map< cstring,
- const IR::P4Action * >
+ const IR::P4Parser * >
diff --git a/inherit_graph_134.map b/inherit_graph_134.map
index 4a0f63cb13..511507c6e5 100644
--- a/inherit_graph_134.map
+++ b/inherit_graph_134.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_134.md5 b/inherit_graph_134.md5
index 86a0aa6fbf..71d911a064 100644
--- a/inherit_graph_134.md5
+++ b/inherit_graph_134.md5
@@ -1 +1 @@
-58cde94aa6cd743dad3e8945a72ce232
\ No newline at end of file
+bfcdcd3ff98db6068a932e145e2550e1
\ No newline at end of file
diff --git a/inherit_graph_134.svg b/inherit_graph_134.svg
index c36ab77a67..7511f3f4de 100644
--- a/inherit_graph_134.svg
+++ b/inherit_graph_134.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::P4Control * >
+ const IR::P4Table * >
diff --git a/inherit_graph_135.map b/inherit_graph_135.map
index 511507c6e5..0405dc13ec 100644
--- a/inherit_graph_135.map
+++ b/inherit_graph_135.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_135.md5 b/inherit_graph_135.md5
index 2bdd9799ab..3adf2ff252 100644
--- a/inherit_graph_135.md5
+++ b/inherit_graph_135.md5
@@ -1 +1 @@
-1fe60ec56c4f6f9ba21ed9f8820ad286
\ No newline at end of file
+592b5a9f587c0eb3a9e249ccd2122ac6
\ No newline at end of file
diff --git a/inherit_graph_135.svg b/inherit_graph_135.svg
index f3e01805f8..689d07dfb5 100644
--- a/inherit_graph_135.svg
+++ b/inherit_graph_135.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::P4Parser * >
+ const IR::P4ValueSet * >
diff --git a/inherit_graph_136.map b/inherit_graph_136.map
index 511507c6e5..3e24fd4603 100644
--- a/inherit_graph_136.map
+++ b/inherit_graph_136.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_136.md5 b/inherit_graph_136.md5
index 71d911a064..ab03e365d4 100644
--- a/inherit_graph_136.md5
+++ b/inherit_graph_136.md5
@@ -1 +1 @@
-bfcdcd3ff98db6068a932e145e2550e1
\ No newline at end of file
+c4df92394d4dea747e21f4f959630934
\ No newline at end of file
diff --git a/inherit_graph_136.svg b/inherit_graph_136.svg
index 7511f3f4de..8dcad86a77 100644
--- a/inherit_graph_136.svg
+++ b/inherit_graph_136.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::P4Table * >
+ const IR::Type_Declaration * >
diff --git a/inherit_graph_137.map b/inherit_graph_137.map
index 0405dc13ec..97f6ffb861 100644
--- a/inherit_graph_137.map
+++ b/inherit_graph_137.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_137.md5 b/inherit_graph_137.md5
index 3adf2ff252..94b7213330 100644
--- a/inherit_graph_137.md5
+++ b/inherit_graph_137.md5
@@ -1 +1 @@
-592b5a9f587c0eb3a9e249ccd2122ac6
\ No newline at end of file
+f36b57dee38151b845089b7563395a24
\ No newline at end of file
diff --git a/inherit_graph_137.svg b/inherit_graph_137.svg
index 689d07dfb5..6acba021e8 100644
--- a/inherit_graph_137.svg
+++ b/inherit_graph_137.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::P4ValueSet * >
+ const IR::Type_Enum * >
diff --git a/inherit_graph_138.map b/inherit_graph_138.map
index 3e24fd4603..01bd1ecbbb 100644
--- a/inherit_graph_138.map
+++ b/inherit_graph_138.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_138.md5 b/inherit_graph_138.md5
index ab03e365d4..0b8d16de98 100644
--- a/inherit_graph_138.md5
+++ b/inherit_graph_138.md5
@@ -1 +1 @@
-c4df92394d4dea747e21f4f959630934
\ No newline at end of file
+1a1ae2d612caf8274a85b1b7628f5255
\ No newline at end of file
diff --git a/inherit_graph_138.svg b/inherit_graph_138.svg
index 8dcad86a77..69b33e08da 100644
--- a/inherit_graph_138.svg
+++ b/inherit_graph_138.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_Declaration * >
+ const IR::Type_Error * >
diff --git a/inherit_graph_139.map b/inherit_graph_139.map
index 97f6ffb861..f02b057451 100644
--- a/inherit_graph_139.map
+++ b/inherit_graph_139.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_139.md5 b/inherit_graph_139.md5
index 94b7213330..2c32a91cb2 100644
--- a/inherit_graph_139.md5
+++ b/inherit_graph_139.md5
@@ -1 +1 @@
-f36b57dee38151b845089b7563395a24
\ No newline at end of file
+c7081b32915357e82f663cbcd6c710a1
\ No newline at end of file
diff --git a/inherit_graph_139.svg b/inherit_graph_139.svg
index 6acba021e8..a6fb493bd7 100644
--- a/inherit_graph_139.svg
+++ b/inherit_graph_139.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_Enum * >
+ const IR::Type_Header * >
diff --git a/inherit_graph_140.map b/inherit_graph_140.map
index 01bd1ecbbb..347dea0382 100644
--- a/inherit_graph_140.map
+++ b/inherit_graph_140.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_140.md5 b/inherit_graph_140.md5
index 0b8d16de98..1e71066229 100644
--- a/inherit_graph_140.md5
+++ b/inherit_graph_140.md5
@@ -1 +1 @@
-1a1ae2d612caf8274a85b1b7628f5255
\ No newline at end of file
+5391664a0e7747d16d9b0699c5cc4358
\ No newline at end of file
diff --git a/inherit_graph_140.svg b/inherit_graph_140.svg
index 69b33e08da..75ab28f382 100644
--- a/inherit_graph_140.svg
+++ b/inherit_graph_140.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_Error * >
+ const IR::Type_HeaderUnion * >
diff --git a/inherit_graph_141.map b/inherit_graph_141.map
index f02b057451..97f6ffb861 100644
--- a/inherit_graph_141.map
+++ b/inherit_graph_141.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_141.md5 b/inherit_graph_141.md5
index 2c32a91cb2..6d0f08d17d 100644
--- a/inherit_graph_141.md5
+++ b/inherit_graph_141.md5
@@ -1 +1 @@
-c7081b32915357e82f663cbcd6c710a1
\ No newline at end of file
+d62d6e9326f9b27b688238b464af43b3
\ No newline at end of file
diff --git a/inherit_graph_141.svg b/inherit_graph_141.svg
index a6fb493bd7..e9096dffc3 100644
--- a/inherit_graph_141.svg
+++ b/inherit_graph_141.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_Header * >
+ const IR::Type_Struct * >
diff --git a/inherit_graph_142.map b/inherit_graph_142.map
index 347dea0382..1252b74fc9 100644
--- a/inherit_graph_142.map
+++ b/inherit_graph_142.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_142.md5 b/inherit_graph_142.md5
index 1e71066229..15b365a017 100644
--- a/inherit_graph_142.md5
+++ b/inherit_graph_142.md5
@@ -1 +1 @@
-5391664a0e7747d16d9b0699c5cc4358
\ No newline at end of file
+0a4ab637b52ba30376f6e7cf3781ccc0
\ No newline at end of file
diff --git a/inherit_graph_142.svg b/inherit_graph_142.svg
index 75ab28f382..c69426d315 100644
--- a/inherit_graph_142.svg
+++ b/inherit_graph_142.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_HeaderUnion * >
+ const IR::Type_StructLike * >
diff --git a/inherit_graph_143.map b/inherit_graph_143.map
index 97f6ffb861..511507c6e5 100644
--- a/inherit_graph_143.map
+++ b/inherit_graph_143.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_143.md5 b/inherit_graph_143.md5
index 6d0f08d17d..36c8a66597 100644
--- a/inherit_graph_143.md5
+++ b/inherit_graph_143.md5
@@ -1 +1 @@
-d62d6e9326f9b27b688238b464af43b3
\ No newline at end of file
+729847f7e2cf448cbe0c1b70bb16da5e
\ No newline at end of file
diff --git a/inherit_graph_143.svg b/inherit_graph_143.svg
index e9096dffc3..164fcd7ec1 100644
--- a/inherit_graph_143.svg
+++ b/inherit_graph_143.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_Struct * >
+ const TestObject * >
diff --git a/inherit_graph_144.map b/inherit_graph_144.map
index 1252b74fc9..511507c6e5 100644
--- a/inherit_graph_144.map
+++ b/inherit_graph_144.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_144.md5 b/inherit_graph_144.md5
index 15b365a017..8171729b83 100644
--- a/inherit_graph_144.md5
+++ b/inherit_graph_144.md5
@@ -1 +1 @@
-0a4ab637b52ba30376f6e7cf3781ccc0
\ No newline at end of file
+ef0c76efea50a826518d15c41b0a2ceb
\ No newline at end of file
diff --git a/inherit_graph_144.svg b/inherit_graph_144.svg
index c69426d315..ff97c18b78 100644
--- a/inherit_graph_144.svg
+++ b/inherit_graph_144.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const IR::Type_StructLike * >
+ cstring >
diff --git a/inherit_graph_145.map b/inherit_graph_145.map
index 511507c6e5..f02b057451 100644
--- a/inherit_graph_145.map
+++ b/inherit_graph_145.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_145.md5 b/inherit_graph_145.md5
index 36c8a66597..c317c142f9 100644
--- a/inherit_graph_145.md5
+++ b/inherit_graph_145.md5
@@ -1 +1 @@
-729847f7e2cf448cbe0c1b70bb16da5e
\ No newline at end of file
+5ac63313aa600a070e7c6bf07c172a47
\ No newline at end of file
diff --git a/inherit_graph_145.svg b/inherit_graph_145.svg
index 164fcd7ec1..fe4efb30e2 100644
--- a/inherit_graph_145.svg
+++ b/inherit_graph_145.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- const TestObject * >
+ enum InternalTableType >
diff --git a/inherit_graph_146.md5 b/inherit_graph_146.md5
index 8171729b83..8a90ba75d7 100644
--- a/inherit_graph_146.md5
+++ b/inherit_graph_146.md5
@@ -1 +1 @@
-ef0c76efea50a826518d15c41b0a2ceb
\ No newline at end of file
+cb8a01d4e94088f5fa383eb5bf2274d3
\ No newline at end of file
diff --git a/inherit_graph_146.svg b/inherit_graph_146.svg
index ff97c18b78..8db7bfd458 100644
--- a/inherit_graph_146.svg
+++ b/inherit_graph_146.svg
@@ -14,7 +14,7 @@
ordered_map< cstring,
- cstring >
+ int >
diff --git a/inherit_graph_147.map b/inherit_graph_147.map
index f02b057451..511507c6e5 100644
--- a/inherit_graph_147.map
+++ b/inherit_graph_147.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_147.md5 b/inherit_graph_147.md5
index c317c142f9..223038799d 100644
--- a/inherit_graph_147.md5
+++ b/inherit_graph_147.md5
@@ -1 +1 @@
-5ac63313aa600a070e7c6bf07c172a47
\ No newline at end of file
+68b1f59beeae764f793fd022835433c1
\ No newline at end of file
diff --git a/inherit_graph_147.svg b/inherit_graph_147.svg
index fe4efb30e2..568f00a42d 100644
--- a/inherit_graph_147.svg
+++ b/inherit_graph_147.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- enum InternalTableType >
+ IR::ParameterList * >
diff --git a/inherit_graph_148.map b/inherit_graph_148.map
index 511507c6e5..4dd4a5d522 100644
--- a/inherit_graph_148.map
+++ b/inherit_graph_148.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_148.md5 b/inherit_graph_148.md5
index 8a90ba75d7..bfb3cb4560 100644
--- a/inherit_graph_148.md5
+++ b/inherit_graph_148.md5
@@ -1 +1 @@
-cb8a01d4e94088f5fa383eb5bf2274d3
\ No newline at end of file
+c58bfda5fd58b04a90340c706c590966
\ No newline at end of file
diff --git a/inherit_graph_148.svg b/inherit_graph_148.svg
index 8db7bfd458..f06f5ca741 100644
--- a/inherit_graph_148.svg
+++ b/inherit_graph_148.svg
@@ -4,17 +4,20 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- int >
+
+ordered_map< cstring,
+ ordered_map< uint, std
+::list< std::pair< std
+::vector< cstring >, MethodImpl
+ > > > >
diff --git a/inherit_graph_149.map b/inherit_graph_149.map
index 511507c6e5..6225c20a23 100644
--- a/inherit_graph_149.map
+++ b/inherit_graph_149.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_149.md5 b/inherit_graph_149.md5
index 223038799d..a73961466b 100644
--- a/inherit_graph_149.md5
+++ b/inherit_graph_149.md5
@@ -1 +1 @@
-68b1f59beeae764f793fd022835433c1
\ No newline at end of file
+60bb5ab9b48467835944c5a38c353c58
\ No newline at end of file
diff --git a/inherit_graph_149.svg b/inherit_graph_149.svg
index 568f00a42d..51f987ab96 100644
--- a/inherit_graph_149.svg
+++ b/inherit_graph_149.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- IR::ParameterList * >
+ P4::ComplexValues::Component * >
diff --git a/inherit_graph_150.map b/inherit_graph_150.map
index 4dd4a5d522..cf55b1ad1a 100644
--- a/inherit_graph_150.map
+++ b/inherit_graph_150.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_150.md5 b/inherit_graph_150.md5
index bfb3cb4560..224a8a9547 100644
--- a/inherit_graph_150.md5
+++ b/inherit_graph_150.md5
@@ -1 +1 @@
-c58bfda5fd58b04a90340c706c590966
\ No newline at end of file
+8ddf768146a6eacb7aa0f8ef77ab4630
\ No newline at end of file
diff --git a/inherit_graph_150.svg b/inherit_graph_150.svg
index f06f5ca741..06618da612 100644
--- a/inherit_graph_150.svg
+++ b/inherit_graph_150.svg
@@ -4,20 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- ordered_map< uint, std
-::list< std::pair< std
-::vector< cstring >, MethodImpl
- > > > >
+
+ordered_map< cstring,
+ P4::StructTypeReplacement
+< IR::Type_StructLike > * >
diff --git a/inherit_graph_151.map b/inherit_graph_151.map
index 6225c20a23..59b470660a 100644
--- a/inherit_graph_151.map
+++ b/inherit_graph_151.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_151.md5 b/inherit_graph_151.md5
index a73961466b..af71c3fc9a 100644
--- a/inherit_graph_151.md5
+++ b/inherit_graph_151.md5
@@ -1 +1 @@
-60bb5ab9b48467835944c5a38c353c58
\ No newline at end of file
+28b41e7dce0f9bf6a2c828620d30ffc2
\ No newline at end of file
diff --git a/inherit_graph_151.svg b/inherit_graph_151.svg
index 51f987ab96..88b9a81e1a 100644
--- a/inherit_graph_151.svg
+++ b/inherit_graph_151.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- P4::ComplexValues::Component * >
+
+ordered_map< cstring,
+ std::pair< cstring,
+ cstring > * >
diff --git a/inherit_graph_152.map b/inherit_graph_152.map
index cf55b1ad1a..8054145c9b 100644
--- a/inherit_graph_152.map
+++ b/inherit_graph_152.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_152.md5 b/inherit_graph_152.md5
index 224a8a9547..aae7af2b54 100644
--- a/inherit_graph_152.md5
+++ b/inherit_graph_152.md5
@@ -1 +1 @@
-8ddf768146a6eacb7aa0f8ef77ab4630
\ No newline at end of file
+38ff3c93e48cb6c3dfe85eaeda322e60
\ No newline at end of file
diff --git a/inherit_graph_152.svg b/inherit_graph_152.svg
index 06618da612..5271831aab 100644
--- a/inherit_graph_152.svg
+++ b/inherit_graph_152.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- P4::StructTypeReplacement
-< IR::Type_StructLike > * >
+
+ordered_map< cstring,
+ std::vector< cstring > * >
diff --git a/inherit_graph_153.map b/inherit_graph_153.map
index 59b470660a..d9fca84941 100644
--- a/inherit_graph_153.map
+++ b/inherit_graph_153.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_153.md5 b/inherit_graph_153.md5
index af71c3fc9a..6f168dcf39 100644
--- a/inherit_graph_153.md5
+++ b/inherit_graph_153.md5
@@ -1 +1 @@
-28b41e7dce0f9bf6a2c828620d30ffc2
\ No newline at end of file
+bce31978a7e9b271afad785305072551
\ No newline at end of file
diff --git a/inherit_graph_153.svg b/inherit_graph_153.svg
index 88b9a81e1a..e3b9b69cb8 100644
--- a/inherit_graph_153.svg
+++ b/inherit_graph_153.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- std::pair< cstring,
- cstring > * >
+
+ordered_map< cstring,
+ std::vector< cstring > >
diff --git a/inherit_graph_154.map b/inherit_graph_154.map
index 8054145c9b..59b470660a 100644
--- a/inherit_graph_154.map
+++ b/inherit_graph_154.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_154.md5 b/inherit_graph_154.md5
index aae7af2b54..c0f686ac85 100644
--- a/inherit_graph_154.md5
+++ b/inherit_graph_154.md5
@@ -1 +1 @@
-38ff3c93e48cb6c3dfe85eaeda322e60
\ No newline at end of file
+965be2d8a477a187eb72a478e99e1391
\ No newline at end of file
diff --git a/inherit_graph_154.svg b/inherit_graph_154.svg
index 5271831aab..17845ff451 100644
--- a/inherit_graph_154.svg
+++ b/inherit_graph_154.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- std::vector< cstring > * >
+
+ordered_map< cstring,
+ std::vector< struct
+ hdrFieldInfo > >
diff --git a/inherit_graph_155.map b/inherit_graph_155.map
index d9fca84941..01bd1ecbbb 100644
--- a/inherit_graph_155.map
+++ b/inherit_graph_155.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_155.md5 b/inherit_graph_155.md5
index 6f168dcf39..f15ab852b4 100644
--- a/inherit_graph_155.md5
+++ b/inherit_graph_155.md5
@@ -1 +1 @@
-bce31978a7e9b271afad785305072551
\ No newline at end of file
+54c71f2564332910a56a796ef948133d
\ No newline at end of file
diff --git a/inherit_graph_155.svg b/inherit_graph_155.svg
index e3b9b69cb8..9260fdf660 100644
--- a/inherit_graph_155.svg
+++ b/inherit_graph_155.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- std::vector< cstring > >
+ struct DPDK::fieldInfo >
diff --git a/inherit_graph_156.map b/inherit_graph_156.map
index 59b470660a..d03bce7b92 100644
--- a/inherit_graph_156.map
+++ b/inherit_graph_156.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_156.md5 b/inherit_graph_156.md5
index c0f686ac85..c9f88421bb 100644
--- a/inherit_graph_156.md5
+++ b/inherit_graph_156.md5
@@ -1 +1 @@
-965be2d8a477a187eb72a478e99e1391
\ No newline at end of file
+cb7b43162fb3f3177fcdca24eea61dae
\ No newline at end of file
diff --git a/inherit_graph_156.svg b/inherit_graph_156.svg
index 17845ff451..ea0c6fa5c5 100644
--- a/inherit_graph_156.svg
+++ b/inherit_graph_156.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
+
ordered_map< cstring,
- std::vector< struct
- hdrFieldInfo > >
+ struct TC::ConvertToBackend
+IR::ExternBlock * >
diff --git a/inherit_graph_157.map b/inherit_graph_157.map
index 01bd1ecbbb..701846d392 100644
--- a/inherit_graph_157.map
+++ b/inherit_graph_157.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_157.md5 b/inherit_graph_157.md5
index f15ab852b4..4e76d1110a 100644
--- a/inherit_graph_157.md5
+++ b/inherit_graph_157.md5
@@ -1 +1 @@
-54c71f2564332910a56a796ef948133d
\ No newline at end of file
+407f54f60df93d4ffdc339b1c5a6c3b4
\ No newline at end of file
diff --git a/inherit_graph_157.svg b/inherit_graph_157.svg
index 9260fdf660..2a90a604ff 100644
--- a/inherit_graph_157.svg
+++ b/inherit_graph_157.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
-ordered_map< cstring,
- struct DPDK::fieldInfo >
+
+ordered_map< K, V,
+ COMP, ALLOC >
diff --git a/inherit_graph_158.map b/inherit_graph_158.map
index d03bce7b92..f2778ae44d 100644
--- a/inherit_graph_158.map
+++ b/inherit_graph_158.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_158.md5 b/inherit_graph_158.md5
index c9f88421bb..a687792467 100644
--- a/inherit_graph_158.md5
+++ b/inherit_graph_158.md5
@@ -1 +1 @@
-cb7b43162fb3f3177fcdca24eea61dae
\ No newline at end of file
+51f512160a1c6c84fdc5292db7c7161a
\ No newline at end of file
diff --git a/inherit_graph_158.svg b/inherit_graph_158.svg
index ea0c6fa5c5..1bed529fc6 100644
--- a/inherit_graph_158.svg
+++ b/inherit_graph_158.svg
@@ -4,18 +4,18 @@
-
+
Graphical Class Hierarchy
Node0
-
-
-ordered_map< cstring,
- struct TC::ConvertToBackend
-IR::ExternBlock * >
+
+
+ordered_map< K, V,
+ COMP, ALLOC >::value
+_compare
diff --git a/inherit_graph_159.map b/inherit_graph_159.map
index 701846d392..028e1c2c06 100644
--- a/inherit_graph_159.map
+++ b/inherit_graph_159.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_159.md5 b/inherit_graph_159.md5
index 4e76d1110a..cf6f0e9803 100644
--- a/inherit_graph_159.md5
+++ b/inherit_graph_159.md5
@@ -1 +1 @@
-407f54f60df93d4ffdc339b1c5a6c3b4
\ No newline at end of file
+ba1a7afd273683715ae31902ca0b35a7
\ No newline at end of file
diff --git a/inherit_graph_159.svg b/inherit_graph_159.svg
index 2a90a604ff..b94aa75b2d 100644
--- a/inherit_graph_159.svg
+++ b/inherit_graph_159.svg
@@ -4,17 +4,18 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< K, V,
- COMP, ALLOC >
+
+ordered_map< std::pair
+< cstring, cstring >,
+ cstring >
diff --git a/inherit_graph_160.map b/inherit_graph_160.map
index f2778ae44d..f21b6fdb70 100644
--- a/inherit_graph_160.map
+++ b/inherit_graph_160.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_160.md5 b/inherit_graph_160.md5
index a687792467..7a5d40b4f0 100644
--- a/inherit_graph_160.md5
+++ b/inherit_graph_160.md5
@@ -1 +1 @@
-51f512160a1c6c84fdc5292db7c7161a
\ No newline at end of file
+77cac64b3d2c48ea261355057de95637
\ No newline at end of file
diff --git a/inherit_graph_160.svg b/inherit_graph_160.svg
index 1bed529fc6..c70c69044c 100644
--- a/inherit_graph_160.svg
+++ b/inherit_graph_160.svg
@@ -4,18 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-
-ordered_map< K, V,
- COMP, ALLOC >::value
-_compare
+
+
+ordered_map< std::string,
+ unsigned >
diff --git a/inherit_graph_161.map b/inherit_graph_161.map
index 028e1c2c06..e3af14f5cf 100644
--- a/inherit_graph_161.map
+++ b/inherit_graph_161.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_161.md5 b/inherit_graph_161.md5
index cf6f0e9803..61965eae30 100644
--- a/inherit_graph_161.md5
+++ b/inherit_graph_161.md5
@@ -1 +1 @@
-ba1a7afd273683715ae31902ca0b35a7
\ No newline at end of file
+8998643d5968969c4b48ae11a115961f
\ No newline at end of file
diff --git a/inherit_graph_161.svg b/inherit_graph_161.svg
index b94aa75b2d..c10d1ad48a 100644
--- a/inherit_graph_161.svg
+++ b/inherit_graph_161.svg
@@ -4,18 +4,19 @@
-
-
+
+
Graphical Class Hierarchy
Node0
-
-ordered_map< std::pair
-< cstring, cstring >,
- cstring >
+
+ordered_map< std::variant
+< IR::ConcolicVariable,
+ const IR::Expression *
+ >, const IR::Expression * >
diff --git a/inherit_graph_162.map b/inherit_graph_162.map
index f21b6fdb70..4a0f63cb13 100644
--- a/inherit_graph_162.map
+++ b/inherit_graph_162.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_162.md5 b/inherit_graph_162.md5
index 7a5d40b4f0..1122e7f649 100644
--- a/inherit_graph_162.md5
+++ b/inherit_graph_162.md5
@@ -1 +1 @@
-77cac64b3d2c48ea261355057de95637
\ No newline at end of file
+aaae0f40a7706ac329136ba6952e53ff
\ No newline at end of file
diff --git a/inherit_graph_162.svg b/inherit_graph_162.svg
index c70c69044c..cd0f219ca3 100644
--- a/inherit_graph_162.svg
+++ b/inherit_graph_162.svg
@@ -4,17 +4,17 @@
-
+
Graphical Class Hierarchy
Node0
-
-ordered_map< std::string,
- unsigned >
+
+ordered_map< T, const
+ IR::Type * >
diff --git a/inherit_graph_163.map b/inherit_graph_163.map
index e3af14f5cf..455dc3c228 100644
--- a/inherit_graph_163.map
+++ b/inherit_graph_163.map
@@ -1,3 +1,3 @@
-
+
diff --git a/inherit_graph_163.md5 b/inherit_graph_163.md5
index 61965eae30..06ce69a5bf 100644
--- a/inherit_graph_163.md5
+++ b/inherit_graph_163.md5
@@ -1 +1 @@
-8998643d5968969c4b48ae11a115961f
\ No newline at end of file
+710f8943ed87d91d81f848f0ea33a1ac
\ No newline at end of file
diff --git a/inherit_graph_163.svg b/inherit_graph_163.svg
index c10d1ad48a..1aac119cc2 100644
--- a/inherit_graph_163.svg
+++ b/inherit_graph_163.svg
@@ -4,19 +4,17 @@
-
-
+
+
Graphical Class Hierarchy
Node0