diff options
| author | chansuke <chansuke@georepublic.de> | 2020-10-21 08:15:28 +0900 |
|---|---|---|
| committer | chansuke <chansuke@georepublic.de> | 2020-10-24 11:50:09 +0900 |
| commit | eed45107da8da6293d9cecc302ad3b9870848b51 (patch) | |
| tree | b7b29477bec45b1b464ca661432166ca8eb2a7e9 | |
| parent | d413bb6f5716261f2740eb67540df1da1469ce12 (diff) | |
| download | rust-eed45107da8da6293d9cecc302ad3b9870848b51.tar.gz rust-eed45107da8da6293d9cecc302ad3b9870848b51.zip | |
Add some description for (malloc/calloc/free/realloc)
| -rw-r--r-- | library/std/src/sys/wasm/alloc.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/library/std/src/sys/wasm/alloc.rs b/library/std/src/sys/wasm/alloc.rs index e12af19718a..b85f4d50021 100644 --- a/library/std/src/sys/wasm/alloc.rs +++ b/library/std/src/sys/wasm/alloc.rs @@ -24,24 +24,28 @@ static mut DLMALLOC: dlmalloc::Dlmalloc = dlmalloc::DLMALLOC_INIT; unsafe impl GlobalAlloc for System { #[inline] unsafe fn alloc(&self, layout: Layout) -> *mut u8 { + // SAFETY: DLMALLOC.malloc() is guranteed to be safe since lock::lock() aqcuire a globl lock let _lock = lock::lock(); unsafe { DLMALLOC.malloc(layout.size(), layout.align()) } } #[inline] unsafe fn alloc_zeroed(&self, layout: Layout) -> *mut u8 { + // SAFETY: DLMALLOC.calloc() is guranteed to be safe since lock::lock() aqcuire a globl lock let _lock = lock::lock(); unsafe { DLMALLOC.calloc(layout.size(), layout.align()) } } #[inline] unsafe fn dealloc(&self, ptr: *mut u8, layout: Layout) { + // SAFETY: DLMALLOC.free() is guranteed to be safe since lock::lock() aqcuire a globl lock let _lock = lock::lock(); unsafe { DLMALLOC.free(ptr, layout.size(), layout.align()) } } #[inline] unsafe fn realloc(&self, ptr: *mut u8, layout: Layout, new_size: usize) -> *mut u8 { + // SAFETY: DLMALLOC.realloc() is guranteed to be safe since lock::lock() aqcuire a globl lock let _lock = lock::lock(); unsafe { DLMALLOC.realloc(ptr, layout.size(), layout.align(), new_size) } } |
