VirtualBox

Changeset 66974 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
May 19, 2017 12:02:17 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
115518
Message:

IEM: Added docs and tests to movaps and movapd.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsTwoByte0f.cpp.h

    r66815 r66974  
    22882288
    22892289
    2290 /** Opcode      0x0f 0x28 - movaps Vps, Wps */
     2290/**
     2291 * @opcode      0x28
     2292 * @oppfx       none
     2293 * @opcpuid     sse
     2294 * @opgroup     og_sse_simdfp_datamove
     2295 * @opxcpttype  1
     2296 * @optest      op1=1 op2=2 -> op1=2
     2297 * @optest      op1=0 op2=-42 -> op1=-42
     2298 * @oponly
     2299 */
    22912300FNIEMOP_DEF(iemOp_movaps_Vps_Wps)
    22922301{
    2293     IEMOP_MNEMONIC(movaps_r_mr, "movaps r,mr");
     2302    IEMOP_MNEMONIC2(RM, MOVAPS, movaps, Vps_WO, Wps, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZE);
    22942303    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    22952304    if ((bRm & X86_MODRM_MOD_MASK) == (3 << X86_MODRM_MOD_SHIFT))
     
    23302339}
    23312340
    2332 /** Opcode 0x66 0x0f 0x28 - movapd Vpd, Wpd */
     2341/**
     2342 * @opcode      0x28
     2343 * @oppfx       66
     2344 * @opcpuid     sse2
     2345 * @opgroup     og_sse2_pcksclr_datamove
     2346 * @opxcpttype  1
     2347 * @optest      op1=1 op2=2 -> op1=2
     2348 * @optest      op1=0 op2=-42 -> op1=-42
     2349 * @oponly
     2350 */
    23332351FNIEMOP_DEF(iemOp_movapd_Vpd_Wpd)
    23342352{
    2335     IEMOP_MNEMONIC(movapd_r_mr, "movapd r,mr");
     2353    IEMOP_MNEMONIC2(RM, MOVAPD, movapd, Vpd_WO, Wpd, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZE);
    23362354    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    23372355    if ((bRm & X86_MODRM_MOD_MASK) == (3 << X86_MODRM_MOD_SHIFT))
     
    23752393/*  Opcode 0xf2 0x0f 0x28 - invalid */
    23762394
    2377 /** Opcode      0x0f 0x29 - movaps Wps, Vps */
     2395/**
     2396 * @opcode      0x29
     2397 * @oppfx       none
     2398 * @opcpuid     sse
     2399 * @opgroup     og_sse_simdfp_datamove
     2400 * @opxcpttype  1
     2401 * @optest      op1=1 op2=2 -> op1=2
     2402 * @optest      op1=0 op2=-42 -> op1=-42
     2403 * @oponly
     2404 */
    23782405FNIEMOP_DEF(iemOp_movaps_Wps_Vps)
    23792406{
    2380     IEMOP_MNEMONIC(movaps_mr_r, "movaps Wps,Vps");
     2407    IEMOP_MNEMONIC2(MR, MOVAPS, movaps, Wps_WO, Vps, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZE);
    23812408    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    23822409    if ((bRm & X86_MODRM_MOD_MASK) == (3 << X86_MODRM_MOD_SHIFT))
     
    24172444}
    24182445
    2419 /** Opcode 0x66 0x0f 0x29 - movapd Wpd,Vpd */
     2446/**
     2447 * @opcode      0x29
     2448 * @oppfx       66
     2449 * @opcpuid     sse2
     2450 * @opgroup     og_sse2_pcksclr_datamove
     2451 * @opxcpttype  1
     2452 * @optest      op1=1 op2=2 -> op1=2
     2453 * @optest      op1=0 op2=-42 -> op1=-42
     2454 * @oponly
     2455 */
    24202456FNIEMOP_DEF(iemOp_movapd_Wpd_Vpd)
    24212457{
    2422     IEMOP_MNEMONIC(movapd_mr_r, "movapd Wpd,Vpd");
     2458    IEMOP_MNEMONIC2(MR, MOVAPD, movapd, Wpd_WO, Vpd, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZE);
    24232459    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    24242460    if ((bRm & X86_MODRM_MOD_MASK) == (3 << X86_MODRM_MOD_SHIFT))
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette