diff --git a/include/gint/dma.h b/include/gint/dma.h index 6dc89ca..a771a67 100644 --- a/include/gint/dma.h +++ b/include/gint/dma.h @@ -104,6 +104,7 @@ void *dma_memset(void *dst, uint32_t pattern, size_t size); @dst Destination address (32-aligned) @dst Source addresss (32-aligned) @size Size of region (32-aligned) */ -void *dma_memcpy(void * restrict dst, const void * restrict src, size_t size); +void *dma_memcpy(void * __restrict dst, const void * __restrict src, + size_t size); #endif /* GINT_DMA */ diff --git a/include/gint/std/string.h b/include/gint/std/string.h index 666ef37..127afcb 100644 --- a/include/gint/std/string.h +++ b/include/gint/std/string.h @@ -8,7 +8,7 @@ #include /* memcpy(): Copy a chunk of memory to a non-overlapping destination */ -void *memcpy(void * restrict dest, void const * restrict src, size_t n); +void *memcpy(void * __restrict dest, void const * __restrict src, size_t n); /* memset(): Fill a chunk of memory with a single byte */ void *memset(void *dest, int byte, size_t n); diff --git a/src/dma/memcpy.c b/src/dma/memcpy.c index ded4a46..9a86a4b 100644 --- a/src/dma/memcpy.c +++ b/src/dma/memcpy.c @@ -1,7 +1,8 @@ #include /* dma_memcpy(): Fast 32-aligned memcpy */ -void *dma_memcpy(void * restrict dst, const void * restrict src, size_t size) +void *dma_memcpy(void * __restrict dst, const void * __restrict src, + size_t size) { dma_transfer(1, DMA_32B, size >> 5, src, DMA_INC, dst, DMA_INC); dma_transfer_wait(1); diff --git a/src/kernel/start.c b/src/kernel/start.c index cd70b22..536b591 100644 --- a/src/kernel/start.c +++ b/src/kernel/start.c @@ -50,7 +50,7 @@ void gint_setrestart(int restart) @l Source pointer (load address) @s Size of area (should be a multiple of 16) @r Destination pointer (relocation address) */ -static void regcpy(uint32_t * restrict l, int32_t s, uint32_t * restrict r) +static void regcpy(uint32_t * __restrict l, int32_t s, uint32_t * __restrict r) { while(s > 0) {