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