[PATCH 4/8] arc: Use __ARC_UNALIGNED__ compiler macro

Yuriy.Kolerov@synopsys.com Yuriy.Kolerov@synopsys.com
Tue Aug 20 12:10:39 GMT 2024


From: Claudiu Zissulescu <claziss@gmail.com>

Replace __ARC_ALIGNED_ACCESS__ macro with the compiler defined
macro __ARC_UNALIGNED__ and improve file comments.

Signed-off-by: Claudiu Zissulescu <claziss@gmail.com>
---
 newlib/libc/machine/arc/memcpy-archs.S | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/newlib/libc/machine/arc/memcpy-archs.S b/newlib/libc/machine/arc/memcpy-archs.S
index f30dafd4f..3c477a745 100644
--- a/newlib/libc/machine/arc/memcpy-archs.S
+++ b/newlib/libc/machine/arc/memcpy-archs.S
@@ -70,7 +70,21 @@
 # define ZOLAND			0xF
 #endif
 
-#ifdef __ARC_ALIGNED_ACCESS__
+
+;;; MEMCPY copy memory regions
+;;; Input arguments:
+;;;   r0 - output memory region
+;;;   r1 - input memory region
+;;;   r2 - size in bytes
+;;; Returns:
+;;;   r0 - pointer to the first byte of the output region
+;;; Clobber:
+;;;   r1, r2, r3, r4, r5, r6, r8r9, r10r11, lp_count
+
+#if !defined (__ARC_UNALIGNED__)
+
+;;; MEMCPY routine for the case when the CPU only accepts ALIGNED
+;;; accesses to memory.
 ENTRY (memcpy)
 	prefetch  [r1]		; Prefetch the read location
 	prefetchw [r0]		; Prefetch the write location
@@ -268,6 +282,8 @@ ENDFUNC (memcpy)
 
 #else
 
+;;; MEMCPY routine which is used by systems with unaligned memory
+;;; accesses.  This is the case for most of ARCHS CPU family.
 ENTRY(memcpy)
 	prefetch  [r1]		; Prefetch the read location
 	prefetchw [r0]		; Prefetch the write location
-- 
2.34.1



More information about the Newlib mailing list