use crate::*;
const ALIGNED_ADDR: u64 = 0x3000;
#[test]
fn test_vmulss_xmm0_xmm1_xmm2() {
let mut emu = emu64();
let code = [
0xc5, 0xf2, 0x59, 0xc2, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm1_xmm2_xmm3() {
let mut emu = emu64();
let code = [
0xc5, 0xea, 0x59, 0xcb, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm2_xmm3_xmm4() {
let mut emu = emu64();
let code = [
0xc5, 0xe2, 0x59, 0xd4, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm3_xmm4_xmm5() {
let mut emu = emu64();
let code = [
0xc5, 0xda, 0x59, 0xdd, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm4_xmm5_xmm6() {
let mut emu = emu64();
let code = [
0xc5, 0xd2, 0x59, 0xe6, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm5_xmm6_xmm7() {
let mut emu = emu64();
let code = [
0xc5, 0xca, 0x59, 0xef, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm6_xmm7_xmm8() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x42, 0x59, 0xf0, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm7_xmm8_xmm9() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x3a, 0x59, 0xf9, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm8_xmm9_xmm10() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x32, 0x59, 0xc2, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm9_xmm10_xmm11() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x2a, 0x59, 0xcb, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm10_xmm11_xmm12() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x22, 0x59, 0xd4, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm11_xmm12_xmm13() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x1a, 0x59, 0xdd, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm12_xmm13_xmm14() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x12, 0x59, 0xe6, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm13_xmm14_xmm15() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x0a, 0x59, 0xef, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm14_xmm15_xmm0() {
let mut emu = emu64();
let code = [
0xc4, 0x61, 0x02, 0x59, 0xf0, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm15_xmm0_xmm1() {
let mut emu = emu64();
let code = [
0xc4, 0x61, 0x7a, 0x59, 0xf9, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm0_xmm1_mem32() {
let mut emu = emu64();
let code = [
0xc5, 0xf2, 0x59, 0x04, 0x25, 0x00, 0x30, 0x00, 0x00, 0xf4,
];
emu.load_code_bytes(&code);
let test_data = [0x00, 0x00, 0x80, 0x3f]; emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vmulss_xmm2_xmm3_mem32() {
let mut emu = emu64();
let code = [
0xc5, 0xe2, 0x59, 0x14, 0x25, 0x00, 0x30, 0x00, 0x00, 0xf4,
];
emu.load_code_bytes(&code);
let test_data = [0x00, 0x00, 0x00, 0x40]; emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm0_xmm1_xmm2() {
let mut emu = emu64();
let code = [
0xc5, 0xf3, 0x59, 0xc2, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm1_xmm2_xmm3() {
let mut emu = emu64();
let code = [
0xc5, 0xeb, 0x59, 0xcb, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm2_xmm3_xmm4() {
let mut emu = emu64();
let code = [
0xc5, 0xe3, 0x59, 0xd4, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm3_xmm4_xmm5() {
let mut emu = emu64();
let code = [
0xc5, 0xdb, 0x59, 0xdd, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm4_xmm5_xmm6() {
let mut emu = emu64();
let code = [
0xc5, 0xd3, 0x59, 0xe6, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm5_xmm6_xmm7() {
let mut emu = emu64();
let code = [
0xc5, 0xcb, 0x59, 0xef, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm6_xmm7_xmm8() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x43, 0x59, 0xf0, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm7_xmm8_xmm9() {
let mut emu = emu64();
let code = [
0xc4, 0xc1, 0x3b, 0x59, 0xf9, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm8_xmm9_xmm10() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x33, 0x59, 0xc2, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm9_xmm10_xmm11() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x2b, 0x59, 0xcb, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm10_xmm11_xmm12() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x23, 0x59, 0xd4, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm11_xmm12_xmm13() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x1b, 0x59, 0xdd, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm12_xmm13_xmm14() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x13, 0x59, 0xe6, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm13_xmm14_xmm15() {
let mut emu = emu64();
let code = [
0xc4, 0x41, 0x0b, 0x59, 0xef, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm14_xmm15_xmm0() {
let mut emu = emu64();
let code = [
0xc4, 0x61, 0x03, 0x59, 0xf0, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm15_xmm0_xmm1() {
let mut emu = emu64();
let code = [
0xc4, 0x61, 0x7b, 0x59, 0xf9, 0xf4,
];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm0_xmm1_mem64() {
let mut emu = emu64();
let code = [
0xc5, 0xf3, 0x59, 0x04, 0x25, 0x00, 0x30, 0x00, 0x00, 0xf4,
];
emu.load_code_bytes(&code);
let test_data = [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f]; emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm2_xmm3_mem64() {
let mut emu = emu64();
let code = [
0xc5, 0xe3, 0x59, 0x14, 0x25, 0x00, 0x30, 0x00, 0x00, 0xf4,
];
emu.load_code_bytes(&code);
let test_data = [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40]; emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}
#[test]
fn test_vmulsd_xmm4_xmm5_mem64() {
let mut emu = emu64();
let code = [
0xc5, 0xd3, 0x59, 0x24, 0x25, 0x00, 0x30, 0x00, 0x00, 0xf4,
];
emu.load_code_bytes(&code);
let test_data = [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40]; emu.maps.write_bytes_slice(ALIGNED_ADDR, &test_data);
emu.run(None).unwrap();
}