mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
tgsi: use EBX everywhere, be sure to push/pop it
This commit is contained in:
parent
7810e7f623
commit
47aa416821
1 changed files with 10 additions and 8 deletions
|
|
@ -103,15 +103,9 @@ get_output_base( void )
|
|||
static struct x86_reg
|
||||
get_temp_base( void )
|
||||
{
|
||||
#ifdef WIN32
|
||||
return x86_make_reg(
|
||||
file_REG32,
|
||||
reg_BX );
|
||||
#else
|
||||
return x86_make_reg(
|
||||
file_REG32,
|
||||
reg_SI );
|
||||
#endif
|
||||
}
|
||||
|
||||
static struct x86_reg
|
||||
|
|
@ -2177,12 +2171,16 @@ tgsi_emit_sse2(
|
|||
|
||||
tgsi_parse_init( &parse, tokens );
|
||||
|
||||
/* Can't just use EDI without save/restoring it:
|
||||
/* Can't just use EDI, EBX without save/restoring them:
|
||||
*/
|
||||
x86_push(
|
||||
func,
|
||||
get_immediate_base() );
|
||||
|
||||
x86_push(
|
||||
func,
|
||||
get_temp_base() );
|
||||
|
||||
|
||||
/*
|
||||
* Different function args for vertex/fragment shaders:
|
||||
|
|
@ -2309,8 +2307,12 @@ tgsi_emit_sse2(
|
|||
soa_to_aos( func, 9, 2, 10, 11 );
|
||||
}
|
||||
|
||||
/* Can't just use EDI without save/restoring it:
|
||||
/* Can't just use EBX, EDI without save/restoring them:
|
||||
*/
|
||||
x86_pop(
|
||||
func,
|
||||
get_temp_base() );
|
||||
|
||||
x86_pop(
|
||||
func,
|
||||
get_immediate_base() );
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue