VirtualBox

Changeset 161 in vbox for trunk/src/VBox/VMM/testcase


Ignore:
Timestamp:
Jan 18, 2007 6:25:45 PM (18 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
17616
Message:

64-bit: structure alignment.

Location:
trunk/src/VBox/VMM/testcase
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/testcase/Makefile

    r1 r161  
    4646#
    4747ifeq ($(BUILD_TARGET),$(BUILD_PLATFORM))
    48  ifeq ($(filter-out x86.amd64 x86.x86, $(BUILD_TARGET_ARCH).$(BUILD_PLATFORM_ARCH)),)
     48 ifeq ($(filter-out x86.x86 x86.amd64, $(BUILD_TARGET_ARCH).$(BUILD_PLATFORM_ARCH)),)
    4949  OTHERS          += \
    5050        $(PATH_TARGET)/tstAsmStructs.run \
  • trunk/src/VBox/VMM/testcase/tstHelp.h

    r23 r161  
    120120    } while (0)
    121121
     122/**
     123 * Checks that a internal struct padding is big enough.
     124 */
     125#define CHECK_PADDING3(strct, member, pad_member) \
     126    do \
     127    { \
     128        strct *p; \
     129        if (sizeof(p->member) > sizeof(p->pad_member)) \
     130        { \
     131            printf("padding of %s::%s is too small, padding=%d struct=%d\n", #strct, #member, \
     132                   (int)sizeof(p->pad_member), (int)sizeof(p->member)); \
     133            rc++; \
     134        } \
     135    } while (0)
     136
     137
    122138#endif
  • trunk/src/VBox/VMM/testcase/tstVMMR0CallHost-1.cpp

    r23 r161  
    9494    RTR3Init(false);
    9595    RTPrintf("tstVMMR0CallHost-1: Testing...\n");
    96     g_Jmp.pvSavedStack = &g_Stack[0];
     96    g_Jmp.pvSavedStack = (RTR0PTR)&g_Stack[0];
    9797
    9898    /*
  • trunk/src/VBox/VMM/testcase/tstVMStructGC.cpp

    r23 r161  
    357357
    358358    GEN_CHECK_SIZE(REM);
     359    GEN_CHECK_OFF(REM, pCtx);
     360    GEN_CHECK_OFF(REM, cCanExecuteRaw);
     361    GEN_CHECK_OFF(REM, aGCPtrInvalidatedPages);
     362    GEN_CHECK_OFF(REM, cHandlerNotifications);
     363    GEN_CHECK_OFF(REM, aHandlerNotifications);
     364    GEN_CHECK_OFF(REM, paHCVirtToGCPhys);
     365    GEN_CHECK_OFF(REM, cPhysRegistrations);
     366    GEN_CHECK_OFF(REM, aPhysReg);
     367    GEN_CHECK_OFF(REM, rc);
     368    GEN_CHECK_OFF(REM, StatsInQEMU);
     369    GEN_CHECK_OFF(REM, Env);
    359370
    360371    GEN_CHECK_SIZE(SELM);
     
    469480    GEN_CHECK_OFF(VMM, cYieldResumeMillies);
    470481    GEN_CHECK_OFF(VMM, cYieldEveryMillies);
     482    GEN_CHECK_OFF(VMM, enmCallHostOperation);
     483    GEN_CHECK_OFF(VMM, rcCallHost);
     484    GEN_CHECK_OFF(VMM, u64CallHostArg);
     485    GEN_CHECK_OFF(VMM, CallHostR0JmpBuf);
     486    GEN_CHECK_OFF(VMM, CallHostR0JmpBuf.SpCheck);
     487    GEN_CHECK_OFF(VMM, CallHostR0JmpBuf.SpResume);
    471488    GEN_CHECK_OFF(VMM, StatRunGC);
     489    GEN_CHECK_OFF(VMM, StatGCRetPGMLock);
    472490
    473491    GEN_CHECK_SIZE(RTPINGPONG);
  • trunk/src/VBox/VMM/testcase/tstVMStructSize.cpp

    r23 r161  
    8888    do \
    8989    { \
    90         printf("%s::%s offset %d\n",  #strct, #member, RT_OFFSETOF(strct, member)); \
     90        printf("%s::%s offset %d sizeof %d\n",  #strct, #member, (int)RT_OFFSETOF(strct, member), (int)RT_SIZEOFMEMB(strct, member)); \
    9191    } while (0)
    9292
     
    151151    CHECK_MEMBER_ALIGNMENT(VM, cpum.s.Hyper, 32);
    152152    CHECK_MEMBER_ALIGNMENT(VM, vmm.s.CritSectVMLock, 8);
     153    CHECK_MEMBER_ALIGNMENT(VM, vmm.s.CallHostR0JmpBuf, 8);
    153154    CHECK_MEMBER_ALIGNMENT(VM, vmm.s.StatRunGC, 8);
    154155    CHECK_MEMBER_ALIGNMENT(VM, StatTotalQemuToGC, 8);
     
    189190    CHECK_MEMBER_ALIGNMENT(PGMPOOLPAGE, GCPhys, sizeof(RTGCPHYS));
    190191
     192    /* misc */
     193    CHECK_PADDING3(EM, u.FatalLongJump, u.achPaddingFatalLongJump);
     194    CHECK_PADDING3(REMHANDLERNOTIFICATION, u.PhysicalRegister, u.padding);
     195    CHECK_PADDING3(REMHANDLERNOTIFICATION, u.PhysicalDeregister, u.padding);
     196    CHECK_PADDING3(REMHANDLERNOTIFICATION, u.PhysicalModify, u.padding);
     197    CHECK_SIZE_ALIGNMENT(VMMR0JMPBUF, 8);
    191198#if 0
    192199    PRINT_OFFSET(VM, fForcedActions);
     
    194201    PRINT_OFFSET(VM, StatGCToQemu);
    195202#endif
     203
    196204
    197205    /*
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