File tree 1 file changed +2
-2
lines changed
1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -2808,7 +2808,7 @@ void i386_device::sse_group_0fae() // Opcode 0f ae
2808
2808
WRITE16 (ea + 0 , m_x87_cw);
2809
2809
WRITE16 (ea + 2 , m_x87_sw);
2810
2810
for (int i = 0 ; i < 8 ; i++)
2811
- if (( m_x87_tw & ( 3 << i )) != 3 ) atag |= 1 << i;
2811
+ if ((( m_x87_tw >> (i * 2 )) & 3 ) != X87_TW_EMPTY ) atag |= 1 << i;
2812
2812
WRITE16 (ea + 4 , atag);
2813
2813
WRITE16 (ea + 6 , m_x87_opcode);
2814
2814
WRITE32 (ea + 8 , m_x87_inst_ptr);
@@ -2850,7 +2850,7 @@ void i386_device::sse_group_0fae() // Opcode 0f ae
2850
2850
m_x87_reg[i].high = READ16 (ea + i*16 + 40 );
2851
2851
if (!(atag & (1 << i)))
2852
2852
tag = X87_TW_EMPTY;
2853
- if (floatx80_is_zero (m_x87_reg[i]))
2853
+ else if (floatx80_is_zero (m_x87_reg[i]))
2854
2854
tag = X87_TW_ZERO;
2855
2855
else if (floatx80_is_inf (m_x87_reg[i]) || floatx80_is_nan (m_x87_reg[i]))
2856
2856
tag = X87_TW_SPECIAL;
You can’t perform that action at this time.
0 commit comments