ck: Update for ILP32

libck assumes all AArch64 pointers are 8 bytes. This adds the required
defines to handle 4 byte pointers on ILP32.
This commit is contained in:
Kinsey Moore
2021-02-25 09:13:42 -06:00
committed by Joel Sherrill
parent e256668d6e
commit 28129f8ee6

View File

@@ -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)