mirror of
https://github.com/FEX-Emu/FEX.git
synced 2025-02-13 03:02:47 +00:00
![Lioncache](/assets/img/avatar_default.png)
These instructions essentially have the same behavior. This also allows us to remove the only used instance of FLAGS_SF_HIGH_XMM_REG, which, given that we now support AVX, has ambiguous use. While we're at it, we can expand the tests to make use of the store to memory variant. Also removes an erroneous copy-pasted comment about ZEXTing. This is from the MOVQ implementation function. MOVHPS/MOVHPD don't do any ZEXTing, they either store to memory or insert into a register.
32 lines
527 B
NASM
32 lines
527 B
NASM
%ifdef CONFIG
|
|
{
|
|
"RegData": {
|
|
"XMM0": ["0x4142434445464748", "0x6162636465666768"],
|
|
"XMM1": ["0x6162636465666768", "0xFFFFFFFFFFFFFFFF"]
|
|
}
|
|
}
|
|
%endif
|
|
|
|
lea rdx, [rel .data]
|
|
|
|
; Into register
|
|
movaps xmm0, [rdx]
|
|
movhps xmm0, [rdx + 16]
|
|
|
|
; Into memory (should only store upper half of xmm into 64-bit region of memory)
|
|
movhps [rdx + 32], xmm0
|
|
movaps xmm1, [rdx + 32]
|
|
|
|
hlt
|
|
|
|
align 16
|
|
.data:
|
|
dq 0x4142434445464748
|
|
dq 0x5152535455565758
|
|
|
|
dq 0x6162636465666768
|
|
dq 0x7172737475767778
|
|
|
|
dq 0xFFFFFFFFFFFFFFFF
|
|
dq 0xFFFFFFFFFFFFFFFF
|