Lines Matching full:layout

79 /// use std::alloc::{alloc, dealloc, handle_alloc_error, Layout};
82 /// let layout = Layout::new::<u16>();
83 /// let ptr = alloc(layout);
85 /// handle_alloc_error(layout);
91 /// dealloc(ptr, layout);
97 pub unsafe fn alloc(layout: Layout) -> *mut u8 { in alloc()
104 __rust_alloc(layout.size(), layout.align()) in alloc()
122 pub unsafe fn dealloc(ptr: *mut u8, layout: Layout) { in dealloc() argument
123 unsafe { __rust_dealloc(ptr, layout.size(), layout.align()) } in dealloc()
141 pub unsafe fn realloc(ptr: *mut u8, layout: Layout, new_size: usize) -> *mut u8 { in realloc() argument
142 unsafe { __rust_realloc(ptr, layout.size(), layout.align(), new_size) } in realloc()
161 /// use std::alloc::{alloc_zeroed, dealloc, Layout};
164 /// let layout = Layout::new::<u16>();
165 /// let ptr = alloc_zeroed(layout);
169 /// dealloc(ptr, layout);
175 pub unsafe fn alloc_zeroed(layout: Layout) -> *mut u8 { in alloc_zeroed()
176 unsafe { __rust_alloc_zeroed(layout.size(), layout.align()) } in alloc_zeroed()
182 fn alloc_impl(&self, layout: Layout, zeroed: bool) -> Result<NonNull<[u8]>, AllocError> { in alloc_impl() argument
183 match layout.size() { in alloc_impl()
184 0 => Ok(NonNull::slice_from_raw_parts(layout.dangling(), 0)), in alloc_impl()
185 // SAFETY: `layout` is non-zero in size, in alloc_impl()
187 let raw_ptr = if zeroed { alloc_zeroed(layout) } else { alloc(layout) }; in alloc_impl()
199 old_layout: Layout, in grow_impl() argument
200 new_layout: Layout, in grow_impl() argument
246 fn allocate(&self, layout: Layout) -> Result<NonNull<[u8]>, AllocError> { in allocate()
247 self.alloc_impl(layout, false) in allocate()
251 fn allocate_zeroed(&self, layout: Layout) -> Result<NonNull<[u8]>, AllocError> { in allocate_zeroed()
252 self.alloc_impl(layout, true) in allocate_zeroed()
256 unsafe fn deallocate(&self, ptr: NonNull<u8>, layout: Layout) { in deallocate() argument
257 if layout.size() != 0 { in deallocate()
258 // SAFETY: `layout` is non-zero in size, in deallocate()
260 unsafe { dealloc(ptr.as_ptr(), layout) } in deallocate()
268 old_layout: Layout, in grow() argument
269 new_layout: Layout, in grow() argument
279 old_layout: Layout, in grow_zeroed() argument
280 new_layout: Layout, in grow_zeroed() argument
290 old_layout: Layout, in shrink() argument
291 new_layout: Layout, in shrink() argument
335 let layout = unsafe { Layout::from_size_align_unchecked(size, align) }; in exchange_malloc() localVariable
336 match Global.allocate(layout) { in exchange_malloc()
338 Err(_) => handle_alloc_error(layout), in exchange_malloc()
353 let layout = Layout::from_size_align_unchecked(size, align); in box_free() localVariable
354 alloc.deallocate(From::from(ptr.cast()), layout) in box_free()
384 pub const fn handle_alloc_error(layout: Layout) -> ! { in handle_alloc_error() argument
385 const fn ct_error(_: Layout) -> ! { in handle_alloc_error() argument
389 fn rt_error(layout: Layout) -> ! { in handle_alloc_error() argument
391 __rust_alloc_error_handler(layout.size(), layout.align()); in handle_alloc_error()
395 unsafe { core::intrinsics::const_eval_select((layout,), ct_error, rt_error) } in handle_alloc_error()