aboutsummaryrefslogtreecommitdiff
path: root/FutureFeatures.md
diff options
context:
space:
mode:
authorwanderer <mjbecze@gmail.com>2017-05-11 23:23:48 -0400
committerJF Bastien <github@jfbastien.com>2017-05-11 20:23:48 -0700
commit0f46fc2d4f0727b8e975ccda93b6b6045bf879ed (patch)
tree13cfb2349e0916d4c86a25864dbbbd2076ddce9b /FutureFeatures.md
parentdfc0d5173bf376e5423f7037cb0bd291df5079b9 (diff)
downloadnanowasm-design-0f46fc2d4f0727b8e975ccda93b6b6045bf879ed.tar.gz
Remove Mutable Gobals from future features (#1014)
* Remove Mutable Gobals from future features * Readded global array types * Update FutureFeatures.md
Diffstat (limited to 'FutureFeatures.md')
-rw-r--r--FutureFeatures.md17
1 files changed, 3 insertions, 14 deletions
diff --git a/FutureFeatures.md b/FutureFeatures.md
index 4d61da2..060d759 100644
--- a/FutureFeatures.md
+++ b/FutureFeatures.md
@@ -472,20 +472,9 @@ lighter-weight alternative to load-time polyfilling (approach 2 in
were to be standardized and performed natively such that no user-space translation
pass was otherwise necessary.
-### Mutable global variables
-
-In the MVP, there are no global variables; C/C++ global variables are stored in
-linear memory and thus accessed through normal
-[linear memory operators](Semantics.md#linear-memory-operators).
-[Dynamic linking](DynamicLinking.md) will add some form of immutable global
-variable analogous to "symbols" in native binaries. In some cases, though,
-it may be useful to have a fully mutable global variable which lives outside
-linear memory. This would allow more aggressive compiler optimizations (due to
-better alias information). If globals are additionally allowed array types,
-significant portions of memory could be moved out of linear memory which could
-reduce fragmentation issues. Languages like Fortran which limit aliasing would be
-one use case. C/C++ compilers could also determine that some global variables never
-have their address taken.
+### Array globals
+
+If globals are allowed array types, significant portions of memory could be moved out of linear memory which could reduce fragmentation issues. Languages like Fortran which limit aliasing would be one use case. C/C++ compilers could also determine that some global variables never have their address taken.
### Streaming Compilation