mirror of
https://github.com/PabloMK7/citra.git
synced 2025-09-08 03:40:05 +00:00
shader_jit_x64: Zero-extend conditional-code bytes
`mov` was doing a partial update of bits within the register, allowing garbage to be introduced in the upper bits of the register.
This commit is contained in:
parent
a510de0e4c
commit
3319719f0f
1 changed files with 2 additions and 2 deletions
|
@ -1002,8 +1002,8 @@ void JitShader::Compile(const std::array<u32, MAX_PROGRAM_CODE_LENGTH>* program_
|
|||
mov(LOOPCOUNT_REG, dword[STATE + offsetof(ShaderUnit, address_registers[2])]);
|
||||
|
||||
// Load conditional code
|
||||
mov(COND0, byte[STATE + offsetof(ShaderUnit, conditional_code[0])]);
|
||||
mov(COND1, byte[STATE + offsetof(ShaderUnit, conditional_code[1])]);
|
||||
movzx(COND0, byte[STATE + offsetof(ShaderUnit, conditional_code[0])]);
|
||||
movzx(COND1, byte[STATE + offsetof(ShaderUnit, conditional_code[1])]);
|
||||
|
||||
// Used to set a register to one
|
||||
static const __m128 one = {1.f, 1.f, 1.f, 1.f};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue