Comments (3)
Right
from rust.
On wasm stack guards like we use on native platforms are not possible. This also means stack probing is not possible either. The only option to detect stack overflows is thus checking the stack pointer against a per-thread limit corresponding to the lowest address of the stack. This is both slow, and the tooling convention for thread support doesn't provide this limit to threads, so we did have to default to not checking for stack overflows and give the user the option to set the stack limit for the current thread to avoid breaking backward compatibility with existing code.
from rust.
But there are many situations where Wasm is run with just a single thread and in those cases limiting the memory size would give us the needed guard region, right?
from rust.
Related Issues (20)
- Confusing documentation for wasm32-wasip1-threads HOT 1
- Main thread thread-local destructors are not run on musl, android HOT 1
- File format not recognized when linking rmeta file for sparc-linux-unknown-gnu HOT 7
- Unhelpful compiler suggestion when trying to dereference a pointer that is not `Copy` HOT 5
- Infinite recursion when reordering bounds in where clause
- Different behavior when changing `opt-level` HOT 4
- `<core::iter::Filter as Iterator>::next_chunk` virtually `core::mem::forget`s all elements that fail the predicate
- Compiler seems to not apply trait bounds transitively HOT 2
- rename config.toml to bootstrap.toml HOT 1
- Bindgen frequently prints "rewriting static" in its output HOT 1
- ICE: `None` in `compiler/rustc_middle/src/ty/sty.rs` without `feature(effects)` HOT 3
- `asm!` should actually understand "can you address this register?"
- Bootstrap panics if lldb fails to start HOT 1
- Suggest const block, instead of const item, for array repeat of non-Copy element HOT 5
- ICE: `deref projection of non-dereferenceable ty` with `feature(type_alias_impl_trait)` and polymorphization HOT 1
- Setting a lower `RUST_MIN_STACK` than `DEFAULT_STACK_SIZE` increases stack??? HOT 12
- ins_pl
- `non_camel_case_name` / `non_snake_case_name` / `non_upper_case_globals` don't fire for `use x as y`
- Invalid suggestion to .await on a function argument pattern
- Very strange error when calling methods with multi-parameter bounds HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust.