mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2024-12-25 01:05:38 +00:00
target-i386: Define MMREG_UNION macro
This will simplify the definitions of ZMMReg and MMXReg. Backports commit 31d414d649b289ff9d1e048c41554298d1094fd3 from qemu
This commit is contained in:
parent
831fdde7fa
commit
0b1f839189
|
@ -722,23 +722,18 @@ typedef struct SegmentCache {
|
||||||
uint32_t flags;
|
uint32_t flags;
|
||||||
} SegmentCache;
|
} SegmentCache;
|
||||||
|
|
||||||
typedef union {
|
#define MMREG_UNION(bits) \
|
||||||
uint8_t _b[64];
|
union { \
|
||||||
uint16_t _w[32];
|
uint8_t _b[(bits)/8]; \
|
||||||
uint32_t _l[16];
|
uint16_t _w[(bits)/16]; \
|
||||||
uint64_t _q[8];
|
uint32_t _l[(bits)/32]; \
|
||||||
float32 _s[16];
|
uint64_t _q[(bits)/64]; \
|
||||||
float64 _d[8];
|
float32 _s[(bits)/32]; \
|
||||||
} ZMMReg;
|
float64 _d[(bits)/64]; \
|
||||||
|
}
|
||||||
|
|
||||||
typedef union {
|
typedef MMREG_UNION(512) ZMMReg;
|
||||||
uint8_t _b[8];
|
typedef MMREG_UNION(64) MMXReg;
|
||||||
uint16_t _w[4];
|
|
||||||
uint32_t _l[2];
|
|
||||||
uint64_t _q[1];
|
|
||||||
float32 _s[2];
|
|
||||||
float64 _d[1];
|
|
||||||
} MMXReg;
|
|
||||||
|
|
||||||
typedef struct BNDReg {
|
typedef struct BNDReg {
|
||||||
uint64_t lb;
|
uint64_t lb;
|
||||||
|
|
Loading…
Reference in a new issue