VirtualBox

Changeset 104147 in vbox for trunk/include


Ignore:
Timestamp:
Apr 4, 2024 1:21:36 AM (10 months ago)
Author:
vboxsync
Message:

VMM/IEM: Optimize (?) the TLB code on ARM64 by using LDP and (for code) STP. Current disabled. Also a disabled native recompiler profiling tweak. bugref:10374

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/armv8.h

    r104056 r104147  
    23682368}
    23692369
     2370
     2371/** A64: ldp x1, x2, [x3]   */
     2372DECL_FORCE_INLINE(uint32_t) Armv8A64MkInstrLdPairGpr(uint32_t iReg1, uint32_t iReg2, uint32_t iBaseReg, int32_t iImm7 = 0,
     2373                                                     ARM64INSTRSTLDPAIRTYPE enmType = kArm64InstrStLdPairType_Signed,
     2374                                                     bool f64Bit = true)
     2375{
     2376    return Armv8A64MkInstrStLdPair(true /*fLoad*/, f64Bit ? 2 : 0, enmType, iReg1, iReg2, iBaseReg, iImm7);
     2377}
     2378
     2379
     2380/** A64: stp x1, x2, [x3]   */
     2381DECL_FORCE_INLINE(uint32_t) Armv8A64MkInstrStPairGpr(uint32_t iReg1, uint32_t iReg2, uint32_t iBaseReg, int32_t iImm7 = 0,
     2382                                                     ARM64INSTRSTLDPAIRTYPE enmType = kArm64InstrStLdPairType_Signed,
     2383                                                     bool f64Bit = true)
     2384{
     2385    return Armv8A64MkInstrStLdPair(false /*fLoad*/, f64Bit ? 2 : 0, enmType, iReg1, iReg2, iBaseReg, iImm7);
     2386}
     2387
     2388
    23702389typedef enum                         /* Size VR Opc */
    23712390{                                    /*     \ | /   */
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