aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/platform.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/platform.h b/include/platform.h
index c365d5c8c..50365a31c 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -236,6 +236,7 @@ typedef uint64_t bb__aliased_uint64_t FIX_ALIASING;
236# define move_from_unaligned32(v, u32p) ((v) = *(bb__aliased_uint32_t*)(u32p)) 236# define move_from_unaligned32(v, u32p) ((v) = *(bb__aliased_uint32_t*)(u32p))
237# define move_to_unaligned16(u16p, v) (*(bb__aliased_uint16_t*)(u16p) = (v)) 237# define move_to_unaligned16(u16p, v) (*(bb__aliased_uint16_t*)(u16p) = (v))
238# define move_to_unaligned32(u32p, v) (*(bb__aliased_uint32_t*)(u32p) = (v)) 238# define move_to_unaligned32(u32p, v) (*(bb__aliased_uint32_t*)(u32p) = (v))
239# define move_to_unaligned64(u64p, v) (*(bb__aliased_uint64_t*)(u64p) = (v))
239/* #elif ... - add your favorite arch today! */ 240/* #elif ... - add your favorite arch today! */
240#else 241#else
241# define BB_UNALIGNED_MEMACCESS_OK 0 242# define BB_UNALIGNED_MEMACCESS_OK 0
@@ -252,6 +253,10 @@ typedef uint64_t bb__aliased_uint64_t FIX_ALIASING;
252 uint32_t __t = (v); \ 253 uint32_t __t = (v); \
253 memcpy((u32p), &__t, 4); \ 254 memcpy((u32p), &__t, 4); \
254} while (0) 255} while (0)
256# define move_to_unaligned64(u64p, v) do { \
257 uint64_t __t = (v); \
258 memcpy((u64p), &__t, 8); \
259} while (0)
255#endif 260#endif
256 261
257/* Unaligned, fixed-endian accessors */ 262/* Unaligned, fixed-endian accessors */