use crate::*;
const ALIGNED_ADDR: u64 = 0x3000;
#[test]
fn test_vblendvps_xmm0_xmm1_xmm2_xmm3() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0xc2, 0x30, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm1_xmm2_xmm3_xmm4() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x69, 0x4a, 0xcb, 0x40, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm2_xmm3_xmm4_xmm5() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x61, 0x4a, 0xd4, 0x50, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm3_xmm4_xmm5_xmm6() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x59, 0x4a, 0xdd, 0x60, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm4_xmm5_xmm6_xmm7() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x51, 0x4a, 0xe6, 0x70, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm7_xmm0_xmm1_xmm2() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x79, 0x4a, 0xf9, 0x20, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm8_xmm9_xmm10_xmm11() {
let mut emu = emu64();
let code = [
0xc4, 0x43, 0x31, 0x4a, 0xc2, 0xb0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm15_xmm0_xmm1_xmm2() {
let mut emu = emu64();
let code = [
0xc4, 0x63, 0x79, 0x4a, 0xf9, 0x20, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_xmm0_xmm1_mem_xmm3() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0x04, 0x25, 0x00, 0x30, 0x00, 0x00, 0x30, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm0_ymm1_ymm2_ymm3() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x75, 0x4a, 0xc2, 0x30, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm1_ymm2_ymm3_ymm4() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x6d, 0x4a, 0xcb, 0x40, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm2_ymm3_ymm4_ymm5() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x65, 0x4a, 0xd4, 0x50, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm3_ymm4_ymm5_ymm6() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x5d, 0x4a, 0xdd, 0x60, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm7_ymm0_ymm1_ymm2() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x7d, 0x4a, 0xf9, 0x20, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_all_from_first() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0xc2, 0x00, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_all_from_second() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0xc2, 0x30, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_alternating() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0xc2, 0x40, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_ymm_different_lanes() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x75, 0x4a, 0xc2, 0x50, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_high_registers() {
let mut emu = emu64();
let code = [
0xc4, 0x43, 0x31, 0x4a, 0xc2, 0xb0, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}
#[test]
fn test_vblendvps_sequential_ops() {
let mut emu = emu64();
let code = [
0xc4, 0xe3, 0x71, 0x4a, 0xc2, 0x30, 0xc4, 0xe3, 0x59, 0x4a, 0xdd, 0x60, 0xf4, ];
emu.load_code_bytes(&code);
emu.run(None).unwrap();
}