VirtualBox

Ignore:
Timestamp:
Oct 28, 2018 5:33:38 PM (6 years ago)
Author:
vboxsync
Message:

iprt/asm*.h,VMMDev.h: Watcom adjustments.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/asm-amd64-x86-watcom-32.h

    r69105 r75131  
    3838 *       the mangling, because the symbol in #pragma aux [symbol] statements
    3939 *       doesn't get subjected to preprocessing.  This is also why we include
    40  *       the watcom header at the top rather than at the bottom of the
    41  *       asm-amd64-x86.h file.
     40 *       the watcom header at both the top and the bottom of asm-amd64-x86.h file.
    4241 */
    4342
    4443#undef      ASMGetIDTR
     44#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    4545#pragma aux ASMGetIDTR = \
    4646    "sidt fword ptr [ecx]" \
    4747    parm [ecx] \
    4848    modify exact [];
     49#endif
    4950
    5051#undef      ASMGetIdtrLimit
     52#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    5153#pragma aux ASMGetIdtrLimit = \
    5254    "sub  esp, 8" \
     
    5759    value [cx] \
    5860    modify exact [ecx];
     61#endif
    5962
    6063#undef      ASMSetIDTR
     64#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    6165#pragma aux ASMSetIDTR = \
    6266    "lidt fword ptr [ecx]" \
    6367    parm [ecx] nomemory \
    6468    modify nomemory;
     69#endif
    6570
    6671#undef      ASMGetGDTR
     72#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    6773#pragma aux ASMGetGDTR = \
    6874    "sgdt fword ptr [ecx]" \
    6975    parm [ecx] \
    7076    modify exact [];
     77#endif
    7178
    7279#undef      ASMSetGDTR
     80#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    7381#pragma aux ASMSetGDTR = \
    7482    "lgdt fword ptr [ecx]" \
    7583    parm [ecx] nomemory \
    7684    modify exact [] nomemory;
     85#endif
    7786
    7887#undef      ASMGetCS
     88#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    7989#pragma aux ASMGetCS = \
    8090    "mov ax, cs" \
     
    8292    value [ax] \
    8393    modify exact [eax] nomemory;
     94#endif
    8495
    8596#undef      ASMGetDS
     97#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    8698#pragma aux ASMGetDS = \
    8799    "mov ax, ds" \
     
    89101    value [ax] \
    90102    modify exact [eax] nomemory;
     103#endif
    91104
    92105#undef      ASMGetES
     106#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    93107#pragma aux ASMGetES = \
    94108    "mov ax, es" \
     
    96110    value [ax] \
    97111    modify exact [eax] nomemory;
     112#endif
    98113
    99114#undef      ASMGetFS
     115#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    100116#pragma aux ASMGetFS = \
    101117    "mov ax, fs" \
     
    103119    value [ax] \
    104120    modify exact [eax] nomemory;
     121#endif
    105122
    106123#undef      ASMGetGS
     124#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    107125#pragma aux ASMGetGS = \
    108126    "mov ax, gs" \
     
    110128    value [ax] \
    111129    modify exact [eax] nomemory;
     130#endif
    112131
    113132#undef      ASMGetSS
     133#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    114134#pragma aux ASMGetSS = \
    115135    "mov ax, ss" \
     
    117137    value [ax] \
    118138    modify exact [eax] nomemory;
     139#endif
    119140
    120141#undef      ASMGetTR
     142#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    121143#pragma aux ASMGetTR = \
    122144    "str ax" \
     
    124146    value [ax] \
    125147    modify exact [eax] nomemory;
     148#endif
    126149
    127150#undef      ASMGetLDTR
     151#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    128152#pragma aux ASMGetLDTR = \
    129153    "sldt ax" \
     
    131155    value [ax] \
    132156    modify exact [eax] nomemory;
     157#endif
    133158
    134159/** @todo ASMGetSegAttr   */
    135160
    136161#undef      ASMGetFlags
     162#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    137163#pragma aux ASMGetFlags = \
    138164    "pushfd" \
     
    141167    value [eax] \
    142168    modify exact [eax] nomemory;
     169#endif
    143170
    144171#undef      ASMSetFlags
     172#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    145173#pragma aux ASMSetFlags = \
    146174    "push eax" \
     
    148176    parm [eax] nomemory \
    149177    modify exact [] nomemory;
     178#endif
    150179
    151180#undef      ASMChangeFlags
     181#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    152182#pragma aux ASMChangeFlags = \
    153183    "pushfd" \
     
    160190    value [eax] \
    161191    modify exact [edx] nomemory;
     192#endif
    162193
    163194#undef      ASMAddFlags
     195#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    164196#pragma aux ASMAddFlags = \
    165197    "pushfd" \
     
    171203    value [eax] \
    172204    modify exact [edx] nomemory;
     205#endif
    173206
    174207#undef      ASMClearFlags
     208#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    175209#pragma aux ASMClearFlags = \
    176210    "pushfd" \
     
    182216    value [eax] \
    183217    modify exact [edx] nomemory;
     218#endif
    184219
    185220/* Note! Must use the 64-bit integer return value convension.
    186221         The order of registers in the value [set] does not seem to mean anything. */
    187222#undef      ASMReadTSC
     223#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    188224#pragma aux ASMReadTSC = \
    189225    ".586" \
     
    192228    value [eax edx] \
    193229    modify exact [edx eax] nomemory;
     230#endif
    194231
    195232#undef      ASMReadTscWithAux
     233#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    196234#pragma aux ASMReadTscWithAux = \
    197235    0x0f 0x01 0xf9 \
     
    200238    value [eax edx] \
    201239    modify exact [eax edx ecx];
     240#endif
    202241
    203242/* ASMCpuId: Implemented externally, too many parameters. */
     
    206245
    207246#undef      ASMCpuId_ECX_EDX
     247#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    208248#pragma aux ASMCpuId_ECX_EDX = \
     249    ".586" \
    209250    "cpuid" \
    210251    "mov [edi], ecx" \
     
    212253    parm [eax] [edi] [esi] \
    213254    modify exact [eax ebx ecx edx];
     255#endif
    214256
    215257#undef      ASMCpuId_EAX
     258#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    216259#pragma aux ASMCpuId_EAX = \
     260    ".586" \
    217261    "cpuid" \
    218262    parm [eax] \
    219263    value [eax] \
    220264    modify exact [eax ebx ecx edx];
     265#endif
    221266
    222267#undef      ASMCpuId_EBX
     268#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    223269#pragma aux ASMCpuId_EBX = \
     270    ".586" \
    224271    "cpuid" \
    225272    parm [eax] \
    226273    value [ebx] \
    227274    modify exact [eax ebx ecx edx];
     275#endif
    228276
    229277#undef      ASMCpuId_ECX
     278#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    230279#pragma aux ASMCpuId_ECX = \
     280    ".586" \
    231281    "cpuid" \
    232282    parm [eax] \
    233283    value [ecx] \
    234284    modify exact [eax ebx ecx edx];
     285#endif
    235286
    236287#undef      ASMCpuId_EDX
     288#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    237289#pragma aux ASMCpuId_EDX = \
     290    ".586" \
    238291    "cpuid" \
    239292    parm [eax] \
    240293    value [edx] \
    241294    modify exact [eax ebx ecx edx];
     295#endif
    242296
    243297/* ASMHasCpuId: MSC inline in main source file. */
    244 /* ASMGetApicId: Implemented externally, lazy bird. */
     298
     299#undef ASMGetApicId
     300#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
     301#pragma aux ASMGetApicId = \
     302    ".586" \
     303    "xor eax, eax" \
     304    "cpuid" \
     305    "shr ebx,24" \
     306    parm [] \
     307    value [bl] \
     308    modify exact [eax ebx ecx edx];
     309#endif
    245310
    246311#undef      ASMGetCR0
     312#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    247313#pragma aux ASMGetCR0 = \
    248314    "mov eax, cr0" \
     
    250316    value [eax] \
    251317    modify exact [eax] nomemory;
     318#endif
    252319
    253320#undef      ASMSetCR0
     321#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    254322#pragma aux ASMSetCR0 = \
    255323    "mov cr0, eax" \
    256324    parm [eax] nomemory \
    257325    modify exact [] nomemory;
     326#endif
    258327
    259328#undef      ASMGetCR2
     329#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    260330#pragma aux ASMGetCR2 = \
    261331    "mov eax, cr2" \
     
    263333    value [eax] \
    264334    modify exact [eax] nomemory;
     335#endif
    265336
    266337#undef      ASMSetCR2
     338#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    267339#pragma aux ASMSetCR2 = \
    268340    "mov cr2, eax" \
    269341    parm [eax] nomemory \
    270342    modify exact [] nomemory;
     343#endif
    271344
    272345#undef      ASMGetCR3
     346#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    273347#pragma aux ASMGetCR3 = \
    274348    "mov eax, cr3" \
     
    276350    value [eax] \
    277351    modify exact [eax] nomemory;
     352#endif
    278353
    279354#undef      ASMSetCR3
     355#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    280356#pragma aux ASMSetCR3 = \
    281357    "mov cr3, eax" \
    282358    parm [eax] nomemory \
    283359    modify exact [] nomemory;
     360#endif
    284361
    285362#undef      ASMReloadCR3
     363#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    286364#pragma aux ASMReloadCR3 = \
    287365    "mov eax, cr3" \
     
    289367    parm [] nomemory \
    290368    modify exact [eax] nomemory;
     369#endif
    291370
    292371#undef      ASMGetCR4
     372#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    293373#pragma aux ASMGetCR4 = \
    294374    "mov eax, cr4" \
     
    296376    value [eax] \
    297377    modify exact [eax] nomemory;
     378#endif
    298379
    299380#undef      ASMSetCR4
     381#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    300382#pragma aux ASMSetCR4 = \
    301383    "mov cr4, eax" \
    302384    parm [eax] nomemory \
    303385    modify exact [] nomemory;
     386#endif
    304387
    305388/* ASMGetCR8: Don't bother for 32-bit. */
     
    307390
    308391#undef      ASMIntEnable
     392#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    309393#pragma aux ASMIntEnable = \
    310394    "sti" \
    311395    parm [] nomemory \
    312396    modify exact [] nomemory;
     397#endif
    313398
    314399#undef      ASMIntDisable
     400#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    315401#pragma aux ASMIntDisable = \
    316402    "cli" \
    317403    parm [] nomemory \
    318404    modify exact [] nomemory;
     405#endif
    319406
    320407#undef      ASMIntDisableFlags
     408#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    321409#pragma aux ASMIntDisableFlags = \
    322410    "pushfd" \
     
    326414    value [eax] \
    327415    modify exact [] nomemory;
     416#endif
    328417
    329418#undef      ASMHalt
     419#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    330420#pragma aux ASMHalt = \
    331421    "hlt" \
    332422    parm [] nomemory \
    333423    modify exact [] nomemory;
     424#endif
    334425
    335426#undef      ASMRdMsr
     427#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    336428#pragma aux ASMRdMsr = \
    337429    ".586" \
     
    340432    value [eax edx] \
    341433    modify exact [eax edx] nomemory;
     434#endif
    342435
    343436#undef      ASMWrMsr
     437#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    344438#pragma aux ASMWrMsr = \
    345439    ".586" \
     
    347441    parm [ecx] [eax edx] nomemory \
    348442    modify exact [] nomemory;
     443#endif
    349444
    350445#undef      ASMRdMsrEx
     446#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    351447#pragma aux ASMRdMsrEx = \
    352448    ".586" \
     
    355451    value [eax edx] \
    356452    modify exact [eax edx] nomemory;
     453#endif
    357454
    358455#undef      ASMWrMsrEx
     456#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    359457#pragma aux ASMWrMsrEx = \
    360458    ".586" \
     
    362460    parm [ecx] [edi] [eax edx] nomemory \
    363461    modify exact [] nomemory;
     462#endif
    364463
    365464#undef      ASMRdMsr_Low
     465#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    366466#pragma aux ASMRdMsr_Low = \
    367467    ".586" \
     
    370470    value [eax] \
    371471    modify exact [eax edx] nomemory;
     472#endif
    372473
    373474#undef      ASMRdMsr_High
     475#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    374476#pragma aux ASMRdMsr_High = \
    375477    ".586" \
     
    378480    value [edx] \
    379481    modify exact [eax edx] nomemory;
     482#endif
    380483
    381484
    382485#undef      ASMGetDR0
     486#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    383487#pragma aux ASMGetDR0 = \
    384488    "mov eax, dr0" \
     
    386490    value [eax] \
    387491    modify exact [eax] nomemory;
     492#endif
    388493
    389494#undef      ASMGetDR1
     495#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    390496#pragma aux ASMGetDR1 = \
    391497    "mov eax, dr1" \
     
    393499    value [eax] \
    394500    modify exact [eax] nomemory;
     501#endif
    395502
    396503#undef      ASMGetDR2
     504#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    397505#pragma aux ASMGetDR2 = \
    398506    "mov eax, dr2" \
     
    400508    value [eax] \
    401509    modify exact [eax] nomemory;
     510#endif
    402511
    403512#undef      ASMGetDR3
     513#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    404514#pragma aux ASMGetDR3 = \
    405515    "mov eax, dr3" \
     
    407517    value [eax] \
    408518    modify exact [eax] nomemory;
     519#endif
    409520
    410521#undef      ASMGetDR6
     522#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    411523#pragma aux ASMGetDR6 = \
    412524    "mov eax, dr6" \
     
    414526    value [eax] \
    415527    modify exact [eax] nomemory;
     528#endif
    416529
    417530#undef      ASMGetAndClearDR6
     531#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    418532#pragma aux ASMGetAndClearDR6 = \
    419533    "mov edx, 0ffff0ff0h" \
     
    423537    value [eax] \
    424538    modify exact [eax edx] nomemory;
     539#endif
    425540
    426541#undef      ASMGetDR7
     542#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    427543#pragma aux ASMGetDR7 = \
    428544    "mov eax, dr7" \
     
    430546    value [eax] \
    431547    modify exact [eax] nomemory;
     548#endif
    432549
    433550#undef      ASMSetDR0
     551#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    434552#pragma aux ASMSetDR0 = \
    435553    "mov dr0, eax" \
    436554    parm [eax] nomemory \
    437555    modify exact [] nomemory;
     556#endif
    438557
    439558#undef      ASMSetDR1
     559#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    440560#pragma aux ASMSetDR1 = \
    441561    "mov dr1, eax" \
    442562    parm [eax] nomemory \
    443563    modify exact [] nomemory;
     564#endif
    444565
    445566#undef      ASMSetDR2
     567#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    446568#pragma aux ASMSetDR2 = \
    447569    "mov dr2, eax" \
    448570    parm [eax] nomemory \
    449571    modify exact [] nomemory;
     572#endif
    450573
    451574#undef      ASMSetDR3
     575#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    452576#pragma aux ASMSetDR3 = \
    453577    "mov dr3, eax" \
    454578    parm [eax] nomemory \
    455579    modify exact [] nomemory;
     580#endif
    456581
    457582#undef      ASMSetDR6
     583#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    458584#pragma aux ASMSetDR6 = \
    459585    "mov dr6, eax" \
    460586    parm [eax] nomemory \
    461587    modify exact [] nomemory;
     588#endif
    462589
    463590#undef      ASMSetDR7
     591#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    464592#pragma aux ASMSetDR7 = \
    465593    "mov dr7, eax" \
    466594    parm [eax] nomemory \
    467595    modify exact [] nomemory;
     596#endif
    468597
    469598/* Yeah, could've used outp here, but this keeps the main file simpler. */
    470599#undef      ASMOutU8
     600#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    471601#pragma aux ASMOutU8 = \
    472602    "out dx, al" \
    473603    parm [dx] [al] nomemory \
    474604    modify exact [] nomemory;
     605#endif
    475606
    476607#undef      ASMInU8
     608#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    477609#pragma aux ASMInU8 = \
    478610    "in al, dx" \
     
    480612    value [al] \
    481613    modify exact [] nomemory;
     614#endif
    482615
    483616#undef      ASMOutU16
     617#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    484618#pragma aux ASMOutU16 = \
    485619    "out dx, ax" \
    486620    parm [dx] [ax] nomemory \
    487621    modify exact [] nomemory;
     622#endif
    488623
    489624#undef      ASMInU16
     625#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    490626#pragma aux ASMInU16 = \
    491627    "in ax, dx" \
     
    493629    value [ax] \
    494630    modify exact [] nomemory;
     631#endif
    495632
    496633#undef      ASMOutU32
     634#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    497635#pragma aux ASMOutU32 = \
    498636    "out dx, eax" \
    499637    parm [dx] [eax] nomemory \
    500638    modify exact [] nomemory;
     639#endif
    501640
    502641#undef      ASMInU32
     642#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    503643#pragma aux ASMInU32 = \
    504644    "in eax, dx" \
     
    506646    value [eax] \
    507647    modify exact [] nomemory;
     648#endif
    508649
    509650#undef      ASMOutStrU8
     651#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    510652#pragma aux ASMOutStrU8 = \
    511653    "rep outsb" \
    512654    parm [dx] [esi] [ecx] nomemory \
    513655    modify exact [esi ecx] nomemory;
     656#endif
    514657
    515658#undef      ASMInStrU8
     659#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    516660#pragma aux ASMInStrU8 = \
    517661    "rep insb" \
    518662    parm [dx] [edi] [ecx] \
    519663    modify exact [edi ecx];
     664#endif
    520665
    521666#undef      ASMOutStrU16
     667#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    522668#pragma aux ASMOutStrU16 = \
    523669    "rep outsw" \
    524670    parm [dx] [esi] [ecx] nomemory \
    525671    modify exact [esi ecx] nomemory;
     672#endif
    526673
    527674#undef      ASMInStrU16
     675#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    528676#pragma aux ASMInStrU16 = \
    529677    "rep insw" \
    530678    parm [dx] [edi] [ecx] \
    531679    modify exact [edi ecx];
     680#endif
    532681
    533682#undef      ASMOutStrU32
     683#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    534684#pragma aux ASMOutStrU32 = \
    535685    "rep outsd" \
    536686    parm [dx] [esi] [ecx] nomemory \
    537687    modify exact [esi ecx] nomemory;
     688#endif
    538689
    539690#undef      ASMInStrU32
     691#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    540692#pragma aux ASMInStrU32 = \
    541693    "rep insd" \
    542694    parm [dx] [edi] [ecx] \
    543695    modify exact [edi ecx];
     696#endif
    544697
    545698#undef      ASMInvalidatePage
     699#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    546700#pragma aux ASMInvalidatePage = \
    547701    "invlpg [eax]" \
    548702    parm [eax] \
    549703    modify exact [];
     704#endif
    550705
    551706#undef      ASMWriteBackAndInvalidateCaches
     707#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    552708#pragma aux ASMWriteBackAndInvalidateCaches = \
    553709    ".486" \
     
    555711    parm [] nomemory \
    556712    modify exact [] nomemory;
     713#endif
    557714
    558715#undef      ASMInvalidateInternalCaches
     716#ifdef IPRT_ASM_AMD64_X86_WATCOM_32_INSTANTIATE
    559717#pragma aux ASMInvalidateInternalCaches = \
    560718    ".486" \
     
    562720    parm [] \
    563721    modify exact [];
    564 
    565 #endif
    566 
     722#endif
     723
     724#endif
     725
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