|
|
|
@ -37,8 +37,8 @@ that, we'll need to use the rest of the heap APIs. These basically allow us to
|
|
|
|
|
talk directly to Rust's allocator (jemalloc by default).
|
|
|
|
|
|
|
|
|
|
We'll also need a way to handle out-of-memory (OOM) conditions. The standard
|
|
|
|
|
library calls `std::alloc::oom()`, which in turn calls the the `oom` langitem.
|
|
|
|
|
By default this just aborts the program by executing an illegal cpu instruction.
|
|
|
|
|
library calls `std::alloc::oom()`, which in turn calls the the `oom` langitem,
|
|
|
|
|
which aborts the program in a platform-specific manner.
|
|
|
|
|
The reason we abort and don't panic is because unwinding can cause allocations
|
|
|
|
|
to happen, and that seems like a bad thing to do when your allocator just came
|
|
|
|
|
back with "hey I don't have any more memory".
|
|
|
|
|