VirtualBox

Changeset 62402 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Jul 21, 2016 1:52:37 PM (9 years ago)
Author:
vboxsync
Message:

iemAImpl_imul_u64: Use RTUint128AssignNeg.

File:
1 edited

Legend:

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

    r62399 r62402  
    11561156        {
    11571157            RTUInt128MulU64ByU64(&Result, *pu64RAX, u64Factor);
    1158             *pu64RAX = Result.s.Lo;
    1159             *pu64RDX = Result.s.Hi;
    11601158            if (Result.s.Hi != 0 || Result.s.Lo >= UINT64_C(0x8000000000000000))
    11611159                *pfEFlags |= X86_EFL_CF | X86_EFL_OF;
     
    11661164            if (Result.s.Hi != 0 || Result.s.Lo > UINT64_C(0x8000000000000000))
    11671165                *pfEFlags |= X86_EFL_CF | X86_EFL_OF;
    1168             *pu64RAX = UINT64_C(0) - Result.s.Lo;
    1169             *pu64RDX = UINT64_C(0) - Result.s.Hi;
     1166            RTUInt128AssignNeg(&Result);
    11701167        }
    11711168    }
     
    11771174            if (Result.s.Hi != 0 || Result.s.Lo > UINT64_C(0x8000000000000000))
    11781175                *pfEFlags |= X86_EFL_CF | X86_EFL_OF;
    1179             *pu64RAX = UINT64_C(0) - Result.s.Lo;
    1180             *pu64RDX = UINT64_C(0) - Result.s.Hi;
     1176            RTUInt128AssignNeg(&Result);
    11811177        }
    11821178        else
     
    11851181            if (Result.s.Hi != 0 || Result.s.Lo >= UINT64_C(0x8000000000000000))
    11861182                *pfEFlags |= X86_EFL_CF | X86_EFL_OF;
    1187             *pu64RAX = Result.s.Lo;
    1188             *pu64RDX = Result.s.Hi;
    1189         }
    1190     }
     1183        }
     1184    }
     1185    *pu64RAX = Result.s.Lo;
     1186    *pu64RDX = Result.s.Hi;
    11911187    if (*pu64RAX & RT_BIT_64(63))
    11921188        *pfEFlags |= X86_EFL_SF;
Note: See TracChangeset for help on using the changeset viewer.

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