diff --git a/libsupport_zynq/src/ram.rs b/libsupport_zynq/src/ram.rs index d21747a..a7134b1 100644 --- a/libsupport_zynq/src/ram.rs +++ b/libsupport_zynq/src/ram.rs @@ -19,7 +19,7 @@ unsafe impl Sync for CortexA9Alloc {} unsafe impl GlobalAlloc for CortexA9Alloc { unsafe fn alloc(&self, layout: Layout) -> *mut u8 { - if MPIDR.read().cpu_id() == 0 { + if cfg!(not(feature = "alloc_core")) || MPIDR.read().cpu_id() == 0 { self.0.get().as_mut() } else { self.1.get().as_mut() @@ -31,7 +31,7 @@ unsafe impl GlobalAlloc for CortexA9Alloc { } unsafe fn dealloc(&self, ptr: *mut u8, layout: Layout) { - if MPIDR.read().cpu_id() == 0 { + if cfg!(not(feature = "alloc_core")) || MPIDR.read().cpu_id() == 0 { self.0.get().as_mut() } else { self.1.get().as_mut() @@ -83,7 +83,7 @@ pub fn init_alloc_core1() { fn alloc_error(layout: core::alloc::Layout) -> ! { let id = MPIDR.read().cpu_id(); let heap = unsafe { - if id == 0 { + if cfg!(not(feature = "alloc_core")) || id == 0 { ALLOCATOR.0.get() } else { ALLOCATOR.1.get()