Skip to content

Commit b4b5c4f

Browse files
authored
Replace FutureFeatures.md content with current links (WebAssembly#1541)
* Replace FutureFeatures.md content with current links FutureFeatures.md contained a list of some possible future features envisioned early in WebAssembly's history. At this time, this list no longer reliably reflects current priorities of CG participants, so remove the content and just link to the main feature, proposal, and discussion lists. Some of them these features now have their own proposal repos, others have their own design-repo issues, others are now covered by documents in tool-conventions. And some do not appear to have active discussions. If anyone would like to start a discussion about any of these features, please file an issue in [the design repo's issue tracker]. [the design repo's issue tracker]: https://github.com/WebAssembly/design/issues * Update links to FutureFeatures.md to link elsewhere.
1 parent 6a498df commit b4b5c4f

9 files changed

Lines changed: 32 additions & 490 deletions

File tree

CAndC++.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ expected that compiled WebAssembly programs will behave very consistently
127127
across different implementations, and across different versions of the same
128128
implementation.
129129

130-
[future 64-bit]: FutureFeatures.md#linear-memory-bigger-than-4-gib
130+
[future 64-bit]: https://github.com/WebAssembly/memory64
131131
[future threads]: https://github.com/WebAssembly/design/issues/1073
132132
[future simd]: https://github.com/WebAssembly/design/issues/1075
133133
[future exceptions]: https://github.com/WebAssembly/design/issues/1078

DynamicLinking.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,4 +92,4 @@ for specialized purposes.
9292

9393
[ABI]: https://en.wikipedia.org/wiki/Application_binary_interface
9494

95-
[future types]: FutureFeatures.md#more-table-operators-and-types
95+
[future types]: https://github.com/WebAssembly/reference-types/blob/master/proposals/reference-types/Overview.md#language-extensions

FAQ.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -392,5 +392,5 @@ Android / iOS.
392392

393393
[future general]: FutureFeatures.md
394394
[future garbage collection]: https://github.com/WebAssembly/proposals/issues/16
395-
[future floating point]: FutureFeatures.md#additional-floating-point-operators
396-
[future memory control]: FutureFeatures.md#finer-grained-control-over-memory
395+
[future floating point]: https://github.com/WebAssembly/design/issues/1391
396+
[future memory control]: https://github.com/WebAssembly/memory-control

FeatureTest.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ it can be constant-folded by WebAssembly engines.
4141

4242
To illustrate, consider 4 examples:
4343

44-
* [`i32.min_s` :unicorn:][future integer] - Strategy 2
45-
could be used to translate `(i32.min_s lhs rhs)` into an equivalent expression
44+
* [`i32.bitrev` :unicorn:][future integer] - Strategy 2
45+
could be used to translate `(i32.bitrev lhs rhs)` into an equivalent expression
4646
that stores `lhs` and `rhs` in locals then uses `i32.lt_s` and `select`.
4747
* [Threads :unicorn:][future threads] - If an application uses `#ifdef` extensively
4848
to produce thread-enabled/disabled builds, Strategy 1 would be appropriate.
@@ -61,7 +61,7 @@ To illustrate, consider 4 examples:
6161
the existing `__builtin_cpu_supports`.
6262
* [SIMD][future simd] - When SIMD operators have a good-enough
6363
polyfill, e.g., `f32x4.fma` via `f32x4.mul`/`add`, Strategy 2 could be used
64-
(similar to the `i32.min_s` example above). However, when a SIMD feature has no
64+
(similar to the `i32.bitrev` example above). However, when a SIMD feature has no
6565
efficient polyfill (e.g., `f64x2`, which introduces both operators *and*
6666
types), alternative algorithms need to be provided and selected at load time.
6767

@@ -101,8 +101,8 @@ See also the [better feature testing support :unicorn:][future feature testing]
101101
future feature.
102102

103103
[future general]: FutureFeatures.md
104-
[future feature testing]: FutureFeatures.md#feature-testing
105-
[future integer]: FutureFeatures.md#additional-integer-operators
104+
[future feature testing]: https://github.com/WebAssembly/design/issues/1280
105+
[future integer]: https://github.com/WebAssembly/design/issues/1382
106106
[future threads]: https://github.com/WebAssembly/design/issues/1073
107107
[future simd]: https://github.com/WebAssembly/design/issues/1075
108-
[future memory control]: FutureFeatures.md#finer-grained-control-over-memory
108+
[future memory control]: https://github.com/WebAssembly/memory-control

FutureFeatures.md

Lines changed: 11 additions & 466 deletions
Large diffs are not rendered by default.

JITLibrary.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# JIT and Optimization Library
22

3-
WebAssembly's [Just-in-Time compilation (JIT)][future jit control]
3+
WebAssembly's Just-in-Time compilation (JIT)
44
interface will likely be fairly low-level, exposing general-purpose primitives
55
rather than higher-level functionality. Still, there is a need for higher-level
66
functionality, and for greater flexibility than the WebAssembly spec can provide.
@@ -84,5 +84,3 @@ A significant range of approaches are possible:
8484
would allow a unique degree of flexibility.
8585

8686
* And many things in between.
87-
88-
[future jit control]: FutureFeatures.md#platform-independent-just-in-time-jit-compilation

Portability.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ characteristics:
3232
* Memory regions which can be efficiently addressed with 32-bit
3333
pointers or indices.
3434
* wasm64 additionally supports linear memory bigger than
35-
[4 GiB with 64-bit pointers or indices][memory64].
35+
[4 GiB with 64-bit pointers or indices][future 64-bit].
3636
* Enforce secure isolation between WebAssembly modules and other modules or
3737
processes executing on the same machine.
3838
* An execution environment which offers forward progress guarantees to all
@@ -61,6 +61,6 @@ the standard interface to the host environment's available imports either at
6161
compile-time (via `#ifdef`) or run-time (via [feature detection]
6262
and dynamic [loading](Modules.md)/[linking](DynamicLinking.md)).
6363

64-
[memory64]: https://github.com/WebAssembly/memory64/blob/main/proposals/memory64/Overview.md
64+
[future 64-bit]: https://github.com/WebAssembly/memory64/blob/main/proposals/memory64/Overview.md
6565
[floating-point operations]: https://webassembly.github.io/spec/core/exec/numerics.html#floating-point-operations
6666
[feature detection]: https://github.com/WebAssembly/design/issues/1280

Rationale.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -457,10 +457,10 @@ hardware platforms.
457457
## Motivating Scenarios for Feature Testing
458458

459459
1. [Post-MVP :unicorn:][future general],
460-
[`i32.min_s` :unicorn:][future integer] is introduced. A
460+
[`i32.bitrev` :unicorn:][future bitrev] is introduced. A
461461
WebAssembly developer updates their toolkit so that the compiler may leverage
462-
`i32.min_s`. The developer's WebAssembly module works correctly both on
463-
execution environments at MVP, as well as those supporting `i32.min_s`.
462+
`i32.bitrev`. The developer's WebAssembly module works correctly both on
463+
execution environments at MVP, as well as those supporting `i32.bitrev`.
464464

465465
* A variant of this, where a few more new opcodes are available, the compiler
466466
is updated to be able to leverage all of them, but not all execution targets
@@ -605,8 +605,8 @@ Moreover, programming languages that allow control transfer _expressions_ usuall
605605

606606

607607
[future general]: FutureFeatures.md
608-
[future flow control]: FutureFeatures.md#more-expressive-control-flow
609-
[future integer]: FutureFeatures.md#additional-integer-operations
608+
[future flow control]: https://github.com/WebAssembly/design/issues/796
609+
[future bitrev]: https://github.com/WebAssembly/design/issues/1382
610610
[future threads]: https://github.com/WebAssembly/design/issues/1073
611611
[future simd]: https://github.com/WebAssembly/design/issues/1075
612612
[future garbage collection]: https://github.com/WebAssembly/proposals/issues/16

Security.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ support for [multiple linear memory sections](Modules.md#linear-memory-section)
6464
[Traps](Semantics.md#traps) are used to immediately terminate execution and
6565
signal abnormal behavior to the execution environment. In a browser, this is
6666
represented as a JavaScript exception. Support for
67-
[module-defined trap handlers][future trapping]
68-
will be implemented in the future. Operations that can trap include:
67+
module-defined trap handlers
68+
may be implemented in the future. Operations that can trap include:
6969

7070
* specifying an invalid index in any index space,
7171
* performing an indirect function call with a mismatched signature,
@@ -181,5 +181,4 @@ in WebAssembly.
181181
[time of check to time of use]: https://en.wikipedia.org/wiki/Time_of_check_to_time_of_use
182182

183183
[future threads]: https://github.com/WebAssembly/design/issues/1073
184-
[future memory control]: FutureFeatures.md#finer-grained-control-over-memory
185-
[future trapping]: FutureFeatures.md#trapping-or-non-trapping-strategies
184+
[future memory control]: https://github.com/WebAssembly/memory-control

0 commit comments

Comments
 (0)