1d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughes#include <inttypes.h> 2d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughestypedef uint32_t mpers_ptr_t; 3d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughestypedef 4d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesstruct { 5d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesstruct { 6d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesmpers_ptr_t p; 7d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hugheschar sc; 8d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char mpers_filler_1[1]; 9d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint16_t ss; 10d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char uc; 11d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char mpers_filler_2[3]; 12d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint32_t si; 13d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint32_t ui; 14d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint32_t sl; 15d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint16_t us; 16d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char mpers_filler_3[6]; 17d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint64_t sll; 18d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint64_t ull; 19d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint32_t ul; 20d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint32_t asl[3]; 21d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hugheschar f; 22d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char mpers_end_filler_4[7]; 23d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughes} ATTRIBUTE_PACKED s; 24d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunion { 25d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint64_t sll; 26d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint64_t ull; 27d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesmpers_ptr_t p; 28d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint32_t sl; 29d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint32_t ul; 30d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint32_t si; 31d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint32_t ui; 32d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint16_t ss; 33d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesuint16_t us; 34d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hugheschar sc; 35d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesunsigned char uc; 36d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughes} u[3]; 37d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughesint16_t f[0]; 38d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughes} ATTRIBUTE_PACKED m32_sample_struct; 39d35df493b4e7684c50d2d2fa032ee3a7ac228009Elliott Hughes#define MPERS_m32_sample_struct m32_sample_struct 40