; $Id: VMMR0.def 90829 2021-08-24 10:26:07Z vboxsync $
;; @file
; VMM Ring 0 DLL - Definition file.

;
; Copyright (C) 2006-2020 Oracle Corporation
;
; This file is part of VirtualBox Open Source Edition (OSE), as
; available from http://www.virtualbox.org. This file is free software;
; you can redistribute it and/or modify it under the terms of the GNU
; General Public License (GPL) as published by the Free Software
; Foundation, in version 2 as it comes in the "COPYING" file of the
; VirtualBox OSE distribution. VirtualBox OSE is distributed in the
; hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
;

LIBRARY VMMR0.r0
EXPORTS
    ; data

    ; code
    GIMGetMmio2Regions
    PDMQueueAlloc
    PDMQueueInsert
    PGMHandlerPhysicalPageTempOff
    PGMShwMakePageWritable
    PGMPhysSimpleWriteGCPhys
    PGMPhysSimpleReadGCPtr
    PGMPhysSimpleWriteGCPtr
    PGMPhysReadGCPtr
    PGMPhysWriteGCPtr
    PGMPhysSimpleDirtyWriteGCPtr
    PDMR0DeviceRegisterModule
    PDMR0DeviceDeregisterModule
    IOMMmioResetRegion
    IOMMmioMapMmio2Page
    RTLogDefaultInstance
    RTLogDefaultInstanceEx
    RTLogGetDefaultInstanceEx
    RTLogRelGetDefaultInstance
    RTLogRelGetDefaultInstanceEx
    RTLogLogger
    RTLogLoggerEx
    RTLogLoggerExV
    RTTimeMilliTS
    RTTraceBufAddMsgF
    RTTraceBufAddPos
    RTTraceBufAddPosMsgF
    TMTimerFromMilli
    TMTimerFromMicro
    TMTimerFromNano
    TMTimerGet
    TMTimerGetFreq
    TMTimerIsActive
    TMTimerIsLockOwner
    TMTimerLock
    TMTimerSet
    TMTimerSetRelative
    TMTimerSetMillies
    TMTimerSetMicro
    TMTimerSetNano
    TMTimerSetFrequencyHint
    TMTimerStop
    TMTimerUnlock
    VMMGetSvnRev
    VMSetError
    VMSetErrorV

    ; Internal Networking
    IntNetR0Open
    IntNetR0IfClose
    IntNetR0IfGetBufferPtrs
    IntNetR0IfSetPromiscuousMode
    IntNetR0IfSetMacAddress
    IntNetR0IfSetActive
    IntNetR0IfSend
    IntNetR0IfWait

    ; runtime
    RTAssertMsg1Weak
    RTAssertMsg2Weak
    RTAssertShouldPanic
    RTCrc32
    RTOnceSlow
    RTTimeNanoTSLegacySyncInvarNoDelta
    RTTimeNanoTSLegacySyncInvarWithDelta
    RTTimeNanoTSLegacyAsync
    RTTimeNanoTSLFenceSyncInvarNoDelta
    RTTimeNanoTSLFenceSyncInvarWithDelta
    RTTimeNanoTSLFenceAsync
    RTTimeSystemNanoTS
    RTTimeNanoTS
    ASMMultU64ByU32DivByU32             ; not-os2
    ASMAtomicXchgU8                     ; not-x86
    ASMAtomicXchgU16                    ; not-x86
    ASMBitFirstSet                      ; not-x86
    ASMNopPause                         ; not-x86
    nocrt_memchr
    nocrt_memcmp
    nocrt_memcpy
    memcpy=nocrt_memcpy                 ; not-os2
    nocrt_memmove
    nocrt_memset
    memset=nocrt_memset                 ; not-os2
    nocrt_strcpy
    nocrt_strcmp
    nocrt_strchr
    nocrt_strlen

