diff options
Diffstat (limited to 'src/tools/fuzzing.h')
-rw-r--r-- | src/tools/fuzzing.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/tools/fuzzing.h b/src/tools/fuzzing.h index e53665e14..24f08dc53 100644 --- a/src/tools/fuzzing.h +++ b/src/tools/fuzzing.h @@ -29,6 +29,7 @@ high chance for set at start of loop #include "ir/branch-utils.h" #include "ir/memory-utils.h" +#include "ir/struct-utils.h" #include "support/insert_ordered.h" #include "tools/fuzzing/random.h" #include <ir/eh-utils.h> @@ -117,6 +118,12 @@ private: // subtypes of it. std::unordered_map<HeapType, std::vector<HeapType>> interestingHeapSubTypes; + // Type => list of struct fields that have that type. + std::unordered_map<Type, std::vector<StructField>> typeStructFields; + + // Type => list of array types that have that type. + std::unordered_map<Type, std::vector<HeapType>> typeArrays; + Index numAddedFunctions = 0; // RAII helper for managing the state used to create a single function. @@ -326,6 +333,8 @@ private: Expression* makeRefEq(Type type); Expression* makeRefTest(Type type); Expression* makeRefCast(Type type); + Expression* makeStructGet(Type type); + Expression* makeArrayGet(Type type); Expression* makeI31Get(Type type); Expression* makeMemoryInit(); Expression* makeDataDrop(); |