File tree 1 file changed +13
-2
lines changed
1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -1756,14 +1756,25 @@ def cip_next():
1756
1756
# TODO: PRNG based on dmp hash
1757
1757
op_write (0 , 42 )
1758
1758
cip_next ()
1759
- elif instr .id == X86_INS_VMOVDQU :
1759
+ elif instr .id in [ X86_INS_VMOVDQU , X86_INS_VMOVUPS ] :
1760
1760
src = op_read (1 )
1761
1761
op_write (0 , src )
1762
1762
cip_next ()
1763
- elif instr .id in [X86_INS_VMOVDQA , X86_INS_MOVNTDQ ]:
1763
+ elif instr .id in [X86_INS_VMOVDQA , X86_INS_MOVNTDQ , X86_INS_VMOVAPS ]:
1764
1764
src = op_read (1 , aligned = True )
1765
1765
op_write (0 , src , aligned = True )
1766
1766
cip_next ()
1767
+ elif instr .id == X86_INS_VINSERTF128 :
1768
+ src = op_read (1 )
1769
+ xmm1 = op_read (2 )
1770
+ imm8 = op_read (3 )
1771
+ if imm8 == 0 :
1772
+ src = (src & 0xffffffffffffffffffffffffffffffff00000000000000000000000000000000 ) | xmm1
1773
+ elif imm8 == 1 :
1774
+ src = (src & 0x00000000000000000000000000000000ffffffffffffffffffffffffffffffff ) | (xmm1 << 128 )
1775
+ op_write (0 , src )
1776
+ cip_next ()
1777
+
1767
1778
else :
1768
1779
dp .error (f"unsupported: { instr .mnemonic } { instr .op_str } " )
1769
1780
# Unsupported instruction
You can’t perform that action at this time.
0 commit comments