summaryrefslogtreecommitdiff
path: root/src/wasm-features.h
diff options
context:
space:
mode:
authorWouter van Oortmerssen <aardappel@gmail.com>2020-09-18 15:50:25 -0700
committerGitHub <noreply@github.com>2020-09-18 15:50:25 -0700
commit3b4cb935f83c7fabacbf61146e56dabc0d65a441 (patch)
tree9aaac74aad59fe2ff2b00ac6e6a77bb808b01747 /src/wasm-features.h
parent1a928bc3ff4b511e81b3f93db8aea872e88abaaf (diff)
downloadbinaryen-3b4cb935f83c7fabacbf61146e56dabc0d65a441.tar.gz
binaryen-3b4cb935f83c7fabacbf61146e56dabc0d65a441.tar.bz2
binaryen-3b4cb935f83c7fabacbf61146e56dabc0d65a441.zip
Initial implementation of "Memory64" proposal (#3130)
Also includes a lot of new spec tests that eventually need to go into the spec repo
Diffstat (limited to 'src/wasm-features.h')
-rw-r--r--src/wasm-features.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/wasm-features.h b/src/wasm-features.h
index 56436bd6a..6e74e0b29 100644
--- a/src/wasm-features.h
+++ b/src/wasm-features.h
@@ -37,7 +37,8 @@ struct FeatureSet {
ReferenceTypes = 1 << 8,
Multivalue = 1 << 9,
GC = 1 << 10,
- All = (1 << 11) - 1
+ Memory64 = 1 << 11,
+ All = (1 << 12) - 1
};
static std::string toString(Feature f) {
@@ -64,6 +65,8 @@ struct FeatureSet {
return "multivalue";
case GC:
return "gc";
+ case Memory64:
+ return "memory64";
default:
WASM_UNREACHABLE("unexpected feature");
}
@@ -105,6 +108,7 @@ struct FeatureSet {
void setReferenceTypes(bool v = true) { set(ReferenceTypes, v); }
void setMultivalue(bool v = true) { set(Multivalue, v); }
void setGC(bool v = true) { set(GC, v); }
+ void setMemory64(bool v = true) { set(Memory64, v); }
void setAll(bool v = true) { features = v ? All : MVP; }
void enable(const FeatureSet& other) { features |= other.features; }