[rtems-libbsd commit] ck: Update for ILP32

Joel Sherrill joel at rtems.org
Wed Mar 10 14:58:05 UTC 2021


Module:    rtems-libbsd
Branch:    6-freebsd-12
Commit:    28129f8ee6177eec12786514e06d65ba15badc73
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=28129f8ee6177eec12786514e06d65ba15badc73

Author:    Kinsey Moore <kinsey.moore at oarcorp.com>
Date:      Thu Feb 25 09:13:42 2021 -0600

ck: Update for ILP32

libck assumes all AArch64 pointers are 8 bytes. This adds the required
defines to handle 4 byte pointers on ILP32.

---

 freebsd/sys/contrib/ck/include/gcc/aarch64/ck_pr.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/freebsd/sys/contrib/ck/include/gcc/aarch64/ck_pr.h b/freebsd/sys/contrib/ck/include/gcc/aarch64/ck_pr.h
index e739c4d..ceac0fe 100644
--- a/freebsd/sys/contrib/ck/include/gcc/aarch64/ck_pr.h
+++ b/freebsd/sys/contrib/ck/include/gcc/aarch64/ck_pr.h
@@ -111,7 +111,11 @@ CK_PR_FENCE(unlock, CK_DMB_SY)
 	}
 
 
+#ifdef __ILP32__
+CK_PR_LOAD(ptr, void, void *, "ldr")
+#else
 CK_PR_LOAD_64(ptr, void, void *, "ldr")
+#endif
 
 #define CK_PR_LOAD_S(S, T, I) CK_PR_LOAD(S, T, T, I)
 #define CK_PR_LOAD_S_64(S, T, I) CK_PR_LOAD_64(S, T, T, I)
@@ -156,7 +160,11 @@ CK_PR_LOAD_S_64(double, double, "ldr")
 		return;						\
 	}
 
+#ifdef __ILP32__
+CK_PR_STORE(ptr, void, const void *, "str")
+#else
 CK_PR_STORE_64(ptr, void, const void *, "str")
+#endif
 
 #define CK_PR_STORE_S(S, T, I) CK_PR_STORE(S, T, T, I)
 #define CK_PR_STORE_S_64(S, T, I) CK_PR_STORE_64(S, T, T, I)



More information about the vc mailing list