diff options
| author | wanderer <mjbecze@gmail.com> | 2017-05-11 23:23:48 -0400 |
|---|---|---|
| committer | JF Bastien <github@jfbastien.com> | 2017-05-11 20:23:48 -0700 |
| commit | 0f46fc2d4f0727b8e975ccda93b6b6045bf879ed (patch) | |
| tree | 13cfb2349e0916d4c86a25864dbbbd2076ddce9b /FutureFeatures.md | |
| parent | dfc0d5173bf376e5423f7037cb0bd291df5079b9 (diff) | |
| download | nanowasm-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.md | 17 |
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 |
