mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-20 10:16:37 +00:00
take a step back
This commit is contained in:
@ -1,24 +1,10 @@
|
||||
/**
|
||||
* Emscripten Memory Allocator.
|
||||
*
|
||||
* Uses Emscripten's exported _malloc and _free implementations, i.e., when linking with
|
||||
* Emscripten-compiled programs that already provide these. Differs from 'system' in that their
|
||||
* names are prefixed with an underscore.
|
||||
*
|
||||
* @module std/assembly/allocator/emscripten
|
||||
*//***/
|
||||
@unsafe declare function _malloc(size: usize): usize;
|
||||
@unsafe declare function _free(ptr: usize): void;
|
||||
|
||||
declare function _malloc(size: usize): usize;
|
||||
declare function _free(ptr: usize): void;
|
||||
|
||||
// Memory allocator implementation
|
||||
@global namespace memory {
|
||||
|
||||
@inline export function allocate(size: usize): usize {
|
||||
return _malloc(size);
|
||||
}
|
||||
|
||||
@inline export function free(ptr: usize): void {
|
||||
_free(ptr);
|
||||
}
|
||||
@unsafe @global function __memory_allocate(size: usize): usize {
|
||||
return _malloc(size);
|
||||
}
|
||||
|
||||
@unsafe @global function __memory_free(ptr: usize): void {
|
||||
_free(ptr);
|
||||
}
|
||||
|
Reference in New Issue
Block a user