use crate::*;
const ALIGNED_ADDR: u64 = 0x3000;
#[test]
fn test_vcvtsi2ss_xmm0_xmm1_eax() {
let mut emu = emu64();
let code = [
0xc5, 0xf2, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm1_xmm2_ebx() {
let mut emu = emu64();
let code = [
0xc5, 0xea, 0x2a, 0xcb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm2_xmm3_ecx() {
let mut emu = emu64();
let code = [
0xc5, 0xe2, 0x2a, 0xd1, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm3_xmm4_edx() {
let mut emu = emu64();
let code = [
0xc5, 0xda, 0x2a, 0xda, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm4_xmm5_esi() {
let mut emu = emu64();
let code = [
0xc5, 0xd2, 0x2a, 0xe6, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm5_xmm6_edi() {
let mut emu = emu64();
let code = [
0xc5, 0xca, 0x2a, 0xef, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm6_xmm7_ebp() {
let mut emu = emu64();
let code = [
0xc5, 0xc2, 0x2a, 0xf5, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm7_xmm0_esp() {
let mut emu = emu64();
let code = [
0xc5, 0xfa, 0x2a, 0xfc, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm8_xmm9_r8d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x32, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm9_xmm10_r9d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x2a, 0x2a, 0xc9, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm10_xmm11_r10d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x22, 0x2a, 0xd2, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm11_xmm12_r11d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x1a, 0x2a, 0xdb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm12_xmm13_r12d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x12, 0x2a, 0xe4, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm13_xmm14_r13d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x0a, 0x2a, 0xed, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm14_xmm15_r14d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x02, 0x2a, 0xf6, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm15_xmm8_r15d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x3a, 0x2a, 0xff, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm0_xmm8_eax() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x3a, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm8_xmm0_r8d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x7a, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm0_xmm1_mem32() {
let mut emu = emu64();
let code = [
0xc5, 0xf2, 0x2a, 0x05, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0x01, 0x00, 0x00, 0x00, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm8_xmm9_mem32_negative() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x32, 0x2a, 0x05, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xff, 0xff, 0xff, 0xff, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm2_xmm3_mem32_large() {
let mut emu = emu64();
let code = [
0xc5, 0xe2, 0x2a, 0x15, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xe8, 0x03, 0x00, 0x00, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm4_xmm5_mem32_max() {
let mut emu = emu64();
let code = [
0xc5, 0xd2, 0x2a, 0x25, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xff, 0xff, 0xff, 0x7f, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm6_xmm7_mem32_min() {
let mut emu = emu64();
let code = [
0xc5, 0xc2, 0x2a, 0x35, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0x00, 0x00, 0x00, 0x80, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm0_xmm1_rax_w1() {
let mut emu = emu64();
let code = [
0xc4, 0xe1, 0xf2, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm1_xmm2_rbx_w1() {
let mut emu = emu64();
let code = [
0xc4, 0xe1, 0xea, 0x2a, 0xcb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2ss_xmm8_xmm9_r8_w1() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0xb2, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm0_xmm1_eax() {
let mut emu = emu64();
let code = [
0xc5, 0xf3, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm1_xmm2_ebx() {
let mut emu = emu64();
let code = [
0xc5, 0xeb, 0x2a, 0xcb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm2_xmm3_ecx() {
let mut emu = emu64();
let code = [
0xc5, 0xe3, 0x2a, 0xd1, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm3_xmm4_edx() {
let mut emu = emu64();
let code = [
0xc5, 0xdb, 0x2a, 0xda, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm4_xmm5_esi() {
let mut emu = emu64();
let code = [
0xc5, 0xd3, 0x2a, 0xe6, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm5_xmm6_edi() {
let mut emu = emu64();
let code = [
0xc5, 0xcb, 0x2a, 0xef, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm6_xmm7_ebp() {
let mut emu = emu64();
let code = [
0xc5, 0xc3, 0x2a, 0xf5, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm7_xmm0_esp() {
let mut emu = emu64();
let code = [
0xc5, 0xfb, 0x2a, 0xfc, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm8_xmm9_r8d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x33, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm9_xmm10_r9d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x2b, 0x2a, 0xc9, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm10_xmm11_r10d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x23, 0x2a, 0xd2, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm11_xmm12_r11d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x1b, 0x2a, 0xdb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm12_xmm13_r12d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x13, 0x2a, 0xe4, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm13_xmm14_r13d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x0b, 0x2a, 0xed, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm14_xmm15_r14d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x03, 0x2a, 0xf6, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm15_xmm8_r15d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x3b, 0x2a, 0xff, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm0_xmm8_eax() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x3b, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm8_xmm0_r8d() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x7b, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm0_xmm1_mem32() {
let mut emu = emu64();
let code = [
0xc5, 0xf3, 0x2a, 0x05, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0x01, 0x00, 0x00, 0x00, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm8_xmm9_mem32_negative() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x33, 0x2a, 0x05, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xff, 0xff, 0xff, 0xff, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm2_xmm3_mem32_large() {
let mut emu = emu64();
let code = [
0xc5, 0xe3, 0x2a, 0x15, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xe8, 0x03, 0x00, 0x00, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm4_xmm5_mem32_max() {
let mut emu = emu64();
let code = [
0xc5, 0xd3, 0x2a, 0x25, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0xff, 0xff, 0xff, 0x7f, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm6_xmm7_mem32_min() {
let mut emu = emu64();
let code = [
0xc5, 0xc3, 0x2a, 0x35, 0x00, 0x40, 0x00, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
let test_data: [u8; 4] = [
0x00, 0x00, 0x00, 0x80, ];
emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm0_xmm1_rax_w1() {
let mut emu = emu64();
let code = [
0xc4, 0xe1, 0xf3, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm1_xmm2_rbx_w1() {
let mut emu = emu64();
let code = [
0xc4, 0xe1, 0xeb, 0x2a, 0xcb, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm8_xmm9_r8_w1() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0xb3, 0x2a, 0xc0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm2_xmm3_rcx_w1() {
let mut emu = emu64();
let code = [
0xc4, 0xe1, 0xe3, 0x2a, 0xd1, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vcvtsi2sd_xmm9_xmm10_r15_w1() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0xab, 0x2a, 0xcf, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}