mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 05:18:08 +02:00
rtasm: add prefetch instructions
This commit is contained in:
parent
dd7e5a4980
commit
102daee1b8
2 changed files with 31 additions and 0 deletions
|
|
@ -629,6 +629,32 @@ void x86_and( struct x86_function *p,
|
|||
* SSE instructions
|
||||
*/
|
||||
|
||||
void sse_prefetchnta( struct x86_function *p, struct x86_reg ptr)
|
||||
{
|
||||
DUMP_R( ptr );
|
||||
assert(ptr.mod != mod_REG);
|
||||
emit_2ub(p, 0x0f, 0x18);
|
||||
emit_modrm_noreg(p, 0, ptr);
|
||||
}
|
||||
|
||||
void sse_prefetch0( struct x86_function *p, struct x86_reg ptr)
|
||||
{
|
||||
DUMP_R( ptr );
|
||||
assert(ptr.mod != mod_REG);
|
||||
emit_2ub(p, 0x0f, 0x18);
|
||||
emit_modrm_noreg(p, 1, ptr);
|
||||
}
|
||||
|
||||
void sse_prefetch1( struct x86_function *p, struct x86_reg ptr)
|
||||
{
|
||||
DUMP_R( ptr );
|
||||
assert(ptr.mod != mod_REG);
|
||||
emit_2ub(p, 0x0f, 0x18);
|
||||
emit_modrm_noreg(p, 2, ptr);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void sse_movss( struct x86_function *p,
|
||||
struct x86_reg dst,
|
||||
|
|
|
|||
|
|
@ -184,6 +184,11 @@ void sse2_pshufd( struct x86_function *p, struct x86_reg dest, struct x86_reg ar
|
|||
void sse2_rcpps( struct x86_function *p, struct x86_reg dst, struct x86_reg src );
|
||||
void sse2_rcpss( struct x86_function *p, struct x86_reg dst, struct x86_reg src );
|
||||
|
||||
|
||||
void sse_prefetchnta( struct x86_function *p, struct x86_reg ptr);
|
||||
void sse_prefetch0( struct x86_function *p, struct x86_reg ptr);
|
||||
void sse_prefetch1( struct x86_function *p, struct x86_reg ptr);
|
||||
|
||||
void sse_addps( struct x86_function *p, struct x86_reg dst, struct x86_reg src );
|
||||
void sse_addss( struct x86_function *p, struct x86_reg dst, struct x86_reg src );
|
||||
void sse_cvtps2pi( struct x86_function *p, struct x86_reg dst, struct x86_reg src );
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue