This commit is contained in:
2026-03-27 01:25:22 +01:00
parent a0f1117bc7
commit 4253416778

View File

@@ -208,7 +208,15 @@ proc _grTexDownload_MMX, 24
jge .mmxAlignFifo ; yes, write NULL packet to align fifo jge .mmxAlignFifo ; yes, write NULL packet to align fifo
%ifdef USE_PACKET_FIFO %ifdef USE_PACKET_FIFO
_grCommandTransportMakeRoom 4, 0, __LINE__; make fifo room sub esp, 16 ; reserve temp space for mm1/mm2
movq [esp], mm1 ; save mm1
movq [esp + 8], mm2 ; save mm2
_grCommandTransportMakeRoom 4, 0, __LINE__ ; make fifo room
movq mm1, [esp] ; restore mm1
movq mm2, [esp + 8] ; restore mm2
add esp, 16 ; release temp space
%endif %endif
mov fifo, [gc + fifoPtr] ; fifoPtr modified by _grCommandTransportMakeRoom, reload mov fifo, [gc + fifoPtr] ; fifoPtr modified by _grCommandTransportMakeRoom, reload
@@ -306,7 +314,15 @@ proc _grTexDownload_MMX, 24
jge .loopT ; yup, write next scan line jge .loopT ; yup, write next scan line
%ifdef USE_PACKET_FIFO %ifdef USE_PACKET_FIFO
_grCommandTransportMakeRoom eax, 0, __LINE__; make fifo room (if fifoPtr QWORD aligned before sub esp, 16 ; reserve temp space for mm1/mm2
movq [esp], mm1 ; save mm1
movq [esp + 8], mm2 ; save mm2
_grCommandTransportMakeRoom eax, 0, __LINE__ ; make fifo room
movq mm1, [esp] ; restore mm1
movq mm2, [esp + 8] ; restore mm2
add esp, 16 ; release temp space
%endif %endif
mov fifo, [gc + fifoPtr] ; fifoPtr was modified by _grCommandTransportMakeRoom, reload mov fifo, [gc + fifoPtr] ; fifoPtr was modified by _grCommandTransportMakeRoom, reload