// Copyright (C) 2026 CoelhoFZ
// SPDX-License-Identifier: GPL-3.0-only
// This file is part of unlocker-CoelhoFZ (GPLv3, see LICENSE).

// Generated by gen_winmm_stubs.py - DO NOT edit manually.
// Forwarding trampolines to the real winmm + global pointers.
// The tail-branch touches no ARGUMENT registers and no stack ->
// it preserves any winmm signature on both architectures.
// `//` comments (not `#`): the .S goes through the C preprocessor.

    .data
    .globl g_real_mciExecute
    .p2align 3
g_real_mciExecute:
    .quad 0
    .globl g_real_CloseDriver
    .p2align 3
g_real_CloseDriver:
    .quad 0
    .globl g_real_DefDriverProc
    .p2align 3
g_real_DefDriverProc:
    .quad 0
    .globl g_real_DriverCallback
    .p2align 3
g_real_DriverCallback:
    .quad 0
    .globl g_real_DrvGetModuleHandle
    .p2align 3
g_real_DrvGetModuleHandle:
    .quad 0
    .globl g_real_GetDriverModuleHandle
    .p2align 3
g_real_GetDriverModuleHandle:
    .quad 0
    .globl g_real_OpenDriver
    .p2align 3
g_real_OpenDriver:
    .quad 0
    .globl g_real_PlaySound
    .p2align 3
g_real_PlaySound:
    .quad 0
    .globl g_real_PlaySoundA
    .p2align 3
g_real_PlaySoundA:
    .quad 0
    .globl g_real_PlaySoundW
    .p2align 3
g_real_PlaySoundW:
    .quad 0
    .globl g_real_SendDriverMessage
    .p2align 3
g_real_SendDriverMessage:
    .quad 0
    .globl g_real_WOWAppExit
    .p2align 3
g_real_WOWAppExit:
    .quad 0
    .globl g_real_auxGetDevCapsA
    .p2align 3
g_real_auxGetDevCapsA:
    .quad 0
    .globl g_real_auxGetDevCapsW
    .p2align 3
g_real_auxGetDevCapsW:
    .quad 0
    .globl g_real_auxGetNumDevs
    .p2align 3
g_real_auxGetNumDevs:
    .quad 0
    .globl g_real_auxGetVolume
    .p2align 3
g_real_auxGetVolume:
    .quad 0
    .globl g_real_auxOutMessage
    .p2align 3
g_real_auxOutMessage:
    .quad 0
    .globl g_real_auxSetVolume
    .p2align 3
g_real_auxSetVolume:
    .quad 0
    .globl g_real_joyConfigChanged
    .p2align 3
g_real_joyConfigChanged:
    .quad 0
    .globl g_real_joyGetDevCapsA
    .p2align 3
g_real_joyGetDevCapsA:
    .quad 0
    .globl g_real_joyGetDevCapsW
    .p2align 3
g_real_joyGetDevCapsW:
    .quad 0
    .globl g_real_joyGetNumDevs
    .p2align 3
g_real_joyGetNumDevs:
    .quad 0
    .globl g_real_joyGetPos
    .p2align 3
g_real_joyGetPos:
    .quad 0
    .globl g_real_joyGetPosEx
    .p2align 3
g_real_joyGetPosEx:
    .quad 0
    .globl g_real_joyGetThreshold
    .p2align 3
g_real_joyGetThreshold:
    .quad 0
    .globl g_real_joyReleaseCapture
    .p2align 3
g_real_joyReleaseCapture:
    .quad 0
    .globl g_real_joySetCapture
    .p2align 3
g_real_joySetCapture:
    .quad 0
    .globl g_real_joySetThreshold
    .p2align 3
g_real_joySetThreshold:
    .quad 0
    .globl g_real_mciDriverNotify
    .p2align 3
g_real_mciDriverNotify:
    .quad 0
    .globl g_real_mciDriverYield
    .p2align 3
g_real_mciDriverYield:
    .quad 0
    .globl g_real_mciFreeCommandResource
    .p2align 3
g_real_mciFreeCommandResource:
    .quad 0
    .globl g_real_mciGetCreatorTask
    .p2align 3
g_real_mciGetCreatorTask:
    .quad 0
    .globl g_real_mciGetDeviceIDA
    .p2align 3
g_real_mciGetDeviceIDA:
    .quad 0
    .globl g_real_mciGetDeviceIDFromElementIDA
    .p2align 3
g_real_mciGetDeviceIDFromElementIDA:
    .quad 0
    .globl g_real_mciGetDeviceIDFromElementIDW
    .p2align 3
g_real_mciGetDeviceIDFromElementIDW:
    .quad 0
    .globl g_real_mciGetDeviceIDW
    .p2align 3
g_real_mciGetDeviceIDW:
    .quad 0
    .globl g_real_mciGetDriverData
    .p2align 3
g_real_mciGetDriverData:
    .quad 0
    .globl g_real_mciGetErrorStringA
    .p2align 3
g_real_mciGetErrorStringA:
    .quad 0
    .globl g_real_mciGetErrorStringW
    .p2align 3
g_real_mciGetErrorStringW:
    .quad 0
    .globl g_real_mciGetYieldProc
    .p2align 3
g_real_mciGetYieldProc:
    .quad 0
    .globl g_real_mciLoadCommandResource
    .p2align 3
g_real_mciLoadCommandResource:
    .quad 0
    .globl g_real_mciSendCommandA
    .p2align 3
g_real_mciSendCommandA:
    .quad 0
    .globl g_real_mciSendCommandW
    .p2align 3
g_real_mciSendCommandW:
    .quad 0
    .globl g_real_mciSendStringA
    .p2align 3
g_real_mciSendStringA:
    .quad 0
    .globl g_real_mciSendStringW
    .p2align 3
g_real_mciSendStringW:
    .quad 0
    .globl g_real_mciSetDriverData
    .p2align 3
g_real_mciSetDriverData:
    .quad 0
    .globl g_real_mciSetYieldProc
    .p2align 3
g_real_mciSetYieldProc:
    .quad 0
    .globl g_real_midiConnect
    .p2align 3
g_real_midiConnect:
    .quad 0
    .globl g_real_midiDisconnect
    .p2align 3
g_real_midiDisconnect:
    .quad 0
    .globl g_real_midiInAddBuffer
    .p2align 3
g_real_midiInAddBuffer:
    .quad 0
    .globl g_real_midiInClose
    .p2align 3
g_real_midiInClose:
    .quad 0
    .globl g_real_midiInGetDevCapsA
    .p2align 3
g_real_midiInGetDevCapsA:
    .quad 0
    .globl g_real_midiInGetDevCapsW
    .p2align 3
g_real_midiInGetDevCapsW:
    .quad 0
    .globl g_real_midiInGetErrorTextA
    .p2align 3
g_real_midiInGetErrorTextA:
    .quad 0
    .globl g_real_midiInGetErrorTextW
    .p2align 3
g_real_midiInGetErrorTextW:
    .quad 0
    .globl g_real_midiInGetID
    .p2align 3
g_real_midiInGetID:
    .quad 0
    .globl g_real_midiInGetNumDevs
    .p2align 3
g_real_midiInGetNumDevs:
    .quad 0
    .globl g_real_midiInMessage
    .p2align 3
g_real_midiInMessage:
    .quad 0
    .globl g_real_midiInOpen
    .p2align 3
g_real_midiInOpen:
    .quad 0
    .globl g_real_midiInPrepareHeader
    .p2align 3
g_real_midiInPrepareHeader:
    .quad 0
    .globl g_real_midiInReset
    .p2align 3
g_real_midiInReset:
    .quad 0
    .globl g_real_midiInStart
    .p2align 3
g_real_midiInStart:
    .quad 0
    .globl g_real_midiInStop
    .p2align 3
g_real_midiInStop:
    .quad 0
    .globl g_real_midiInUnprepareHeader
    .p2align 3
g_real_midiInUnprepareHeader:
    .quad 0
    .globl g_real_midiOutCacheDrumPatches
    .p2align 3
g_real_midiOutCacheDrumPatches:
    .quad 0
    .globl g_real_midiOutCachePatches
    .p2align 3
g_real_midiOutCachePatches:
    .quad 0
    .globl g_real_midiOutClose
    .p2align 3
g_real_midiOutClose:
    .quad 0
    .globl g_real_midiOutGetDevCapsA
    .p2align 3
g_real_midiOutGetDevCapsA:
    .quad 0
    .globl g_real_midiOutGetDevCapsW
    .p2align 3
g_real_midiOutGetDevCapsW:
    .quad 0
    .globl g_real_midiOutGetErrorTextA
    .p2align 3
g_real_midiOutGetErrorTextA:
    .quad 0
    .globl g_real_midiOutGetErrorTextW
    .p2align 3
g_real_midiOutGetErrorTextW:
    .quad 0
    .globl g_real_midiOutGetID
    .p2align 3
g_real_midiOutGetID:
    .quad 0
    .globl g_real_midiOutGetNumDevs
    .p2align 3
g_real_midiOutGetNumDevs:
    .quad 0
    .globl g_real_midiOutGetVolume
    .p2align 3
g_real_midiOutGetVolume:
    .quad 0
    .globl g_real_midiOutLongMsg
    .p2align 3
g_real_midiOutLongMsg:
    .quad 0
    .globl g_real_midiOutMessage
    .p2align 3
g_real_midiOutMessage:
    .quad 0
    .globl g_real_midiOutOpen
    .p2align 3
g_real_midiOutOpen:
    .quad 0
    .globl g_real_midiOutPrepareHeader
    .p2align 3
g_real_midiOutPrepareHeader:
    .quad 0
    .globl g_real_midiOutReset
    .p2align 3
g_real_midiOutReset:
    .quad 0
    .globl g_real_midiOutSetVolume
    .p2align 3
g_real_midiOutSetVolume:
    .quad 0
    .globl g_real_midiOutShortMsg
    .p2align 3
g_real_midiOutShortMsg:
    .quad 0
    .globl g_real_midiOutUnprepareHeader
    .p2align 3
g_real_midiOutUnprepareHeader:
    .quad 0
    .globl g_real_midiStreamClose
    .p2align 3
g_real_midiStreamClose:
    .quad 0
    .globl g_real_midiStreamOpen
    .p2align 3
g_real_midiStreamOpen:
    .quad 0
    .globl g_real_midiStreamOut
    .p2align 3
g_real_midiStreamOut:
    .quad 0
    .globl g_real_midiStreamPause
    .p2align 3
g_real_midiStreamPause:
    .quad 0
    .globl g_real_midiStreamPosition
    .p2align 3
g_real_midiStreamPosition:
    .quad 0
    .globl g_real_midiStreamProperty
    .p2align 3
g_real_midiStreamProperty:
    .quad 0
    .globl g_real_midiStreamRestart
    .p2align 3
g_real_midiStreamRestart:
    .quad 0
    .globl g_real_midiStreamStop
    .p2align 3
g_real_midiStreamStop:
    .quad 0
    .globl g_real_mixerClose
    .p2align 3
g_real_mixerClose:
    .quad 0
    .globl g_real_mixerGetControlDetailsA
    .p2align 3
g_real_mixerGetControlDetailsA:
    .quad 0
    .globl g_real_mixerGetControlDetailsW
    .p2align 3
g_real_mixerGetControlDetailsW:
    .quad 0
    .globl g_real_mixerGetDevCapsA
    .p2align 3
g_real_mixerGetDevCapsA:
    .quad 0
    .globl g_real_mixerGetDevCapsW
    .p2align 3
g_real_mixerGetDevCapsW:
    .quad 0
    .globl g_real_mixerGetID
    .p2align 3
g_real_mixerGetID:
    .quad 0
    .globl g_real_mixerGetLineControlsA
    .p2align 3
g_real_mixerGetLineControlsA:
    .quad 0
    .globl g_real_mixerGetLineControlsW
    .p2align 3
g_real_mixerGetLineControlsW:
    .quad 0
    .globl g_real_mixerGetLineInfoA
    .p2align 3
g_real_mixerGetLineInfoA:
    .quad 0
    .globl g_real_mixerGetLineInfoW
    .p2align 3
g_real_mixerGetLineInfoW:
    .quad 0
    .globl g_real_mixerGetNumDevs
    .p2align 3
g_real_mixerGetNumDevs:
    .quad 0
    .globl g_real_mixerMessage
    .p2align 3
g_real_mixerMessage:
    .quad 0
    .globl g_real_mixerOpen
    .p2align 3
g_real_mixerOpen:
    .quad 0
    .globl g_real_mixerSetControlDetails
    .p2align 3
g_real_mixerSetControlDetails:
    .quad 0
    .globl g_real_mmDrvInstall
    .p2align 3
g_real_mmDrvInstall:
    .quad 0
    .globl g_real_mmGetCurrentTask
    .p2align 3
g_real_mmGetCurrentTask:
    .quad 0
    .globl g_real_mmTaskBlock
    .p2align 3
g_real_mmTaskBlock:
    .quad 0
    .globl g_real_mmTaskCreate
    .p2align 3
g_real_mmTaskCreate:
    .quad 0
    .globl g_real_mmTaskSignal
    .p2align 3
g_real_mmTaskSignal:
    .quad 0
    .globl g_real_mmTaskYield
    .p2align 3
g_real_mmTaskYield:
    .quad 0
    .globl g_real_mmioAdvance
    .p2align 3
g_real_mmioAdvance:
    .quad 0
    .globl g_real_mmioAscend
    .p2align 3
g_real_mmioAscend:
    .quad 0
    .globl g_real_mmioClose
    .p2align 3
g_real_mmioClose:
    .quad 0
    .globl g_real_mmioCreateChunk
    .p2align 3
g_real_mmioCreateChunk:
    .quad 0
    .globl g_real_mmioDescend
    .p2align 3
g_real_mmioDescend:
    .quad 0
    .globl g_real_mmioFlush
    .p2align 3
g_real_mmioFlush:
    .quad 0
    .globl g_real_mmioGetInfo
    .p2align 3
g_real_mmioGetInfo:
    .quad 0
    .globl g_real_mmioInstallIOProcA
    .p2align 3
g_real_mmioInstallIOProcA:
    .quad 0
    .globl g_real_mmioInstallIOProcW
    .p2align 3
g_real_mmioInstallIOProcW:
    .quad 0
    .globl g_real_mmioOpenA
    .p2align 3
g_real_mmioOpenA:
    .quad 0
    .globl g_real_mmioOpenW
    .p2align 3
g_real_mmioOpenW:
    .quad 0
    .globl g_real_mmioRead
    .p2align 3
g_real_mmioRead:
    .quad 0
    .globl g_real_mmioRenameA
    .p2align 3
g_real_mmioRenameA:
    .quad 0
    .globl g_real_mmioRenameW
    .p2align 3
g_real_mmioRenameW:
    .quad 0
    .globl g_real_mmioSeek
    .p2align 3
g_real_mmioSeek:
    .quad 0
    .globl g_real_mmioSendMessage
    .p2align 3
g_real_mmioSendMessage:
    .quad 0
    .globl g_real_mmioSetBuffer
    .p2align 3
g_real_mmioSetBuffer:
    .quad 0
    .globl g_real_mmioSetInfo
    .p2align 3
g_real_mmioSetInfo:
    .quad 0
    .globl g_real_mmioStringToFOURCCA
    .p2align 3
g_real_mmioStringToFOURCCA:
    .quad 0
    .globl g_real_mmioStringToFOURCCW
    .p2align 3
g_real_mmioStringToFOURCCW:
    .quad 0
    .globl g_real_mmioWrite
    .p2align 3
g_real_mmioWrite:
    .quad 0
    .globl g_real_mmsystemGetVersion
    .p2align 3
g_real_mmsystemGetVersion:
    .quad 0
    .globl g_real_sndPlaySoundA
    .p2align 3
g_real_sndPlaySoundA:
    .quad 0
    .globl g_real_sndPlaySoundW
    .p2align 3
g_real_sndPlaySoundW:
    .quad 0
    .globl g_real_timeBeginPeriod
    .p2align 3
g_real_timeBeginPeriod:
    .quad 0
    .globl g_real_timeEndPeriod
    .p2align 3
g_real_timeEndPeriod:
    .quad 0
    .globl g_real_timeGetDevCaps
    .p2align 3
g_real_timeGetDevCaps:
    .quad 0
    .globl g_real_timeGetSystemTime
    .p2align 3
g_real_timeGetSystemTime:
    .quad 0
    .globl g_real_timeGetTime
    .p2align 3
g_real_timeGetTime:
    .quad 0
    .globl g_real_timeKillEvent
    .p2align 3
g_real_timeKillEvent:
    .quad 0
    .globl g_real_timeSetEvent
    .p2align 3
g_real_timeSetEvent:
    .quad 0
    .globl g_real_waveInAddBuffer
    .p2align 3
g_real_waveInAddBuffer:
    .quad 0
    .globl g_real_waveInClose
    .p2align 3
g_real_waveInClose:
    .quad 0
    .globl g_real_waveInGetDevCapsA
    .p2align 3
g_real_waveInGetDevCapsA:
    .quad 0
    .globl g_real_waveInGetDevCapsW
    .p2align 3
g_real_waveInGetDevCapsW:
    .quad 0
    .globl g_real_waveInGetErrorTextA
    .p2align 3
g_real_waveInGetErrorTextA:
    .quad 0
    .globl g_real_waveInGetErrorTextW
    .p2align 3
g_real_waveInGetErrorTextW:
    .quad 0
    .globl g_real_waveInGetID
    .p2align 3
g_real_waveInGetID:
    .quad 0
    .globl g_real_waveInGetNumDevs
    .p2align 3
g_real_waveInGetNumDevs:
    .quad 0
    .globl g_real_waveInGetPosition
    .p2align 3
g_real_waveInGetPosition:
    .quad 0
    .globl g_real_waveInMessage
    .p2align 3
g_real_waveInMessage:
    .quad 0
    .globl g_real_waveInOpen
    .p2align 3
g_real_waveInOpen:
    .quad 0
    .globl g_real_waveInPrepareHeader
    .p2align 3
g_real_waveInPrepareHeader:
    .quad 0
    .globl g_real_waveInReset
    .p2align 3
g_real_waveInReset:
    .quad 0
    .globl g_real_waveInStart
    .p2align 3
g_real_waveInStart:
    .quad 0
    .globl g_real_waveInStop
    .p2align 3
g_real_waveInStop:
    .quad 0
    .globl g_real_waveInUnprepareHeader
    .p2align 3
g_real_waveInUnprepareHeader:
    .quad 0
    .globl g_real_waveOutBreakLoop
    .p2align 3
g_real_waveOutBreakLoop:
    .quad 0
    .globl g_real_waveOutClose
    .p2align 3
g_real_waveOutClose:
    .quad 0
    .globl g_real_waveOutGetDevCapsA
    .p2align 3
g_real_waveOutGetDevCapsA:
    .quad 0
    .globl g_real_waveOutGetDevCapsW
    .p2align 3
g_real_waveOutGetDevCapsW:
    .quad 0
    .globl g_real_waveOutGetErrorTextA
    .p2align 3
g_real_waveOutGetErrorTextA:
    .quad 0
    .globl g_real_waveOutGetErrorTextW
    .p2align 3
g_real_waveOutGetErrorTextW:
    .quad 0
    .globl g_real_waveOutGetID
    .p2align 3
g_real_waveOutGetID:
    .quad 0
    .globl g_real_waveOutGetNumDevs
    .p2align 3
g_real_waveOutGetNumDevs:
    .quad 0
    .globl g_real_waveOutGetPitch
    .p2align 3
g_real_waveOutGetPitch:
    .quad 0
    .globl g_real_waveOutGetPlaybackRate
    .p2align 3
g_real_waveOutGetPlaybackRate:
    .quad 0
    .globl g_real_waveOutGetPosition
    .p2align 3
g_real_waveOutGetPosition:
    .quad 0
    .globl g_real_waveOutGetVolume
    .p2align 3
g_real_waveOutGetVolume:
    .quad 0
    .globl g_real_waveOutMessage
    .p2align 3
g_real_waveOutMessage:
    .quad 0
    .globl g_real_waveOutOpen
    .p2align 3
g_real_waveOutOpen:
    .quad 0
    .globl g_real_waveOutPause
    .p2align 3
g_real_waveOutPause:
    .quad 0
    .globl g_real_waveOutPrepareHeader
    .p2align 3
g_real_waveOutPrepareHeader:
    .quad 0
    .globl g_real_waveOutReset
    .p2align 3
g_real_waveOutReset:
    .quad 0
    .globl g_real_waveOutRestart
    .p2align 3
g_real_waveOutRestart:
    .quad 0
    .globl g_real_waveOutSetPitch
    .p2align 3
g_real_waveOutSetPitch:
    .quad 0
    .globl g_real_waveOutSetPlaybackRate
    .p2align 3
g_real_waveOutSetPlaybackRate:
    .quad 0
    .globl g_real_waveOutSetVolume
    .p2align 3
g_real_waveOutSetVolume:
    .quad 0
    .globl g_real_waveOutUnprepareHeader
    .p2align 3
g_real_waveOutUnprepareHeader:
    .quad 0
    .globl g_real_waveOutWrite
    .p2align 3
g_real_waveOutWrite:
    .quad 0

    .text
#if defined(__aarch64__)
    .globl mciExecute
    .p2align 2
mciExecute:
    adrp x16, g_real_mciExecute
    ldr  x17, [x16, :lo12:g_real_mciExecute]
    br   x17
#elif defined(__x86_64__)
    .globl mciExecute
mciExecute:
    jmp *g_real_mciExecute(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl CloseDriver
    .p2align 2
CloseDriver:
    adrp x16, g_real_CloseDriver
    ldr  x17, [x16, :lo12:g_real_CloseDriver]
    br   x17
#elif defined(__x86_64__)
    .globl CloseDriver
CloseDriver:
    jmp *g_real_CloseDriver(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl DefDriverProc
    .p2align 2
DefDriverProc:
    adrp x16, g_real_DefDriverProc
    ldr  x17, [x16, :lo12:g_real_DefDriverProc]
    br   x17
#elif defined(__x86_64__)
    .globl DefDriverProc
DefDriverProc:
    jmp *g_real_DefDriverProc(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl DriverCallback
    .p2align 2
DriverCallback:
    adrp x16, g_real_DriverCallback
    ldr  x17, [x16, :lo12:g_real_DriverCallback]
    br   x17
#elif defined(__x86_64__)
    .globl DriverCallback
DriverCallback:
    jmp *g_real_DriverCallback(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl DrvGetModuleHandle
    .p2align 2
DrvGetModuleHandle:
    adrp x16, g_real_DrvGetModuleHandle
    ldr  x17, [x16, :lo12:g_real_DrvGetModuleHandle]
    br   x17
#elif defined(__x86_64__)
    .globl DrvGetModuleHandle
DrvGetModuleHandle:
    jmp *g_real_DrvGetModuleHandle(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl GetDriverModuleHandle
    .p2align 2
GetDriverModuleHandle:
    adrp x16, g_real_GetDriverModuleHandle
    ldr  x17, [x16, :lo12:g_real_GetDriverModuleHandle]
    br   x17
#elif defined(__x86_64__)
    .globl GetDriverModuleHandle
GetDriverModuleHandle:
    jmp *g_real_GetDriverModuleHandle(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl OpenDriver
    .p2align 2
OpenDriver:
    adrp x16, g_real_OpenDriver
    ldr  x17, [x16, :lo12:g_real_OpenDriver]
    br   x17
#elif defined(__x86_64__)
    .globl OpenDriver
OpenDriver:
    jmp *g_real_OpenDriver(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl PlaySound
    .p2align 2
PlaySound:
    adrp x16, g_real_PlaySound
    ldr  x17, [x16, :lo12:g_real_PlaySound]
    br   x17
#elif defined(__x86_64__)
    .globl PlaySound
PlaySound:
    jmp *g_real_PlaySound(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl PlaySoundA
    .p2align 2
PlaySoundA:
    adrp x16, g_real_PlaySoundA
    ldr  x17, [x16, :lo12:g_real_PlaySoundA]
    br   x17
#elif defined(__x86_64__)
    .globl PlaySoundA
PlaySoundA:
    jmp *g_real_PlaySoundA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl PlaySoundW
    .p2align 2
PlaySoundW:
    adrp x16, g_real_PlaySoundW
    ldr  x17, [x16, :lo12:g_real_PlaySoundW]
    br   x17
#elif defined(__x86_64__)
    .globl PlaySoundW
PlaySoundW:
    jmp *g_real_PlaySoundW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl SendDriverMessage
    .p2align 2
SendDriverMessage:
    adrp x16, g_real_SendDriverMessage
    ldr  x17, [x16, :lo12:g_real_SendDriverMessage]
    br   x17
#elif defined(__x86_64__)
    .globl SendDriverMessage
SendDriverMessage:
    jmp *g_real_SendDriverMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl WOWAppExit
    .p2align 2
WOWAppExit:
    adrp x16, g_real_WOWAppExit
    ldr  x17, [x16, :lo12:g_real_WOWAppExit]
    br   x17
#elif defined(__x86_64__)
    .globl WOWAppExit
WOWAppExit:
    jmp *g_real_WOWAppExit(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxGetDevCapsA
    .p2align 2
auxGetDevCapsA:
    adrp x16, g_real_auxGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_auxGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl auxGetDevCapsA
auxGetDevCapsA:
    jmp *g_real_auxGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxGetDevCapsW
    .p2align 2
auxGetDevCapsW:
    adrp x16, g_real_auxGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_auxGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl auxGetDevCapsW
auxGetDevCapsW:
    jmp *g_real_auxGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxGetNumDevs
    .p2align 2
auxGetNumDevs:
    adrp x16, g_real_auxGetNumDevs
    ldr  x17, [x16, :lo12:g_real_auxGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl auxGetNumDevs
auxGetNumDevs:
    jmp *g_real_auxGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxGetVolume
    .p2align 2
auxGetVolume:
    adrp x16, g_real_auxGetVolume
    ldr  x17, [x16, :lo12:g_real_auxGetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl auxGetVolume
auxGetVolume:
    jmp *g_real_auxGetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxOutMessage
    .p2align 2
auxOutMessage:
    adrp x16, g_real_auxOutMessage
    ldr  x17, [x16, :lo12:g_real_auxOutMessage]
    br   x17
#elif defined(__x86_64__)
    .globl auxOutMessage
auxOutMessage:
    jmp *g_real_auxOutMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl auxSetVolume
    .p2align 2
auxSetVolume:
    adrp x16, g_real_auxSetVolume
    ldr  x17, [x16, :lo12:g_real_auxSetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl auxSetVolume
auxSetVolume:
    jmp *g_real_auxSetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyConfigChanged
    .p2align 2
joyConfigChanged:
    adrp x16, g_real_joyConfigChanged
    ldr  x17, [x16, :lo12:g_real_joyConfigChanged]
    br   x17
#elif defined(__x86_64__)
    .globl joyConfigChanged
joyConfigChanged:
    jmp *g_real_joyConfigChanged(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetDevCapsA
    .p2align 2
joyGetDevCapsA:
    adrp x16, g_real_joyGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_joyGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetDevCapsA
joyGetDevCapsA:
    jmp *g_real_joyGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetDevCapsW
    .p2align 2
joyGetDevCapsW:
    adrp x16, g_real_joyGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_joyGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetDevCapsW
joyGetDevCapsW:
    jmp *g_real_joyGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetNumDevs
    .p2align 2
joyGetNumDevs:
    adrp x16, g_real_joyGetNumDevs
    ldr  x17, [x16, :lo12:g_real_joyGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetNumDevs
joyGetNumDevs:
    jmp *g_real_joyGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetPos
    .p2align 2
joyGetPos:
    adrp x16, g_real_joyGetPos
    ldr  x17, [x16, :lo12:g_real_joyGetPos]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetPos
joyGetPos:
    jmp *g_real_joyGetPos(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetPosEx
    .p2align 2
joyGetPosEx:
    adrp x16, g_real_joyGetPosEx
    ldr  x17, [x16, :lo12:g_real_joyGetPosEx]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetPosEx
joyGetPosEx:
    jmp *g_real_joyGetPosEx(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyGetThreshold
    .p2align 2
joyGetThreshold:
    adrp x16, g_real_joyGetThreshold
    ldr  x17, [x16, :lo12:g_real_joyGetThreshold]
    br   x17
#elif defined(__x86_64__)
    .globl joyGetThreshold
joyGetThreshold:
    jmp *g_real_joyGetThreshold(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joyReleaseCapture
    .p2align 2
joyReleaseCapture:
    adrp x16, g_real_joyReleaseCapture
    ldr  x17, [x16, :lo12:g_real_joyReleaseCapture]
    br   x17
#elif defined(__x86_64__)
    .globl joyReleaseCapture
joyReleaseCapture:
    jmp *g_real_joyReleaseCapture(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joySetCapture
    .p2align 2
joySetCapture:
    adrp x16, g_real_joySetCapture
    ldr  x17, [x16, :lo12:g_real_joySetCapture]
    br   x17
#elif defined(__x86_64__)
    .globl joySetCapture
joySetCapture:
    jmp *g_real_joySetCapture(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl joySetThreshold
    .p2align 2
joySetThreshold:
    adrp x16, g_real_joySetThreshold
    ldr  x17, [x16, :lo12:g_real_joySetThreshold]
    br   x17
#elif defined(__x86_64__)
    .globl joySetThreshold
joySetThreshold:
    jmp *g_real_joySetThreshold(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciDriverNotify
    .p2align 2
mciDriverNotify:
    adrp x16, g_real_mciDriverNotify
    ldr  x17, [x16, :lo12:g_real_mciDriverNotify]
    br   x17
#elif defined(__x86_64__)
    .globl mciDriverNotify
mciDriverNotify:
    jmp *g_real_mciDriverNotify(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciDriverYield
    .p2align 2
mciDriverYield:
    adrp x16, g_real_mciDriverYield
    ldr  x17, [x16, :lo12:g_real_mciDriverYield]
    br   x17
#elif defined(__x86_64__)
    .globl mciDriverYield
mciDriverYield:
    jmp *g_real_mciDriverYield(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciFreeCommandResource
    .p2align 2
mciFreeCommandResource:
    adrp x16, g_real_mciFreeCommandResource
    ldr  x17, [x16, :lo12:g_real_mciFreeCommandResource]
    br   x17
#elif defined(__x86_64__)
    .globl mciFreeCommandResource
mciFreeCommandResource:
    jmp *g_real_mciFreeCommandResource(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetCreatorTask
    .p2align 2
mciGetCreatorTask:
    adrp x16, g_real_mciGetCreatorTask
    ldr  x17, [x16, :lo12:g_real_mciGetCreatorTask]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetCreatorTask
mciGetCreatorTask:
    jmp *g_real_mciGetCreatorTask(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetDeviceIDA
    .p2align 2
mciGetDeviceIDA:
    adrp x16, g_real_mciGetDeviceIDA
    ldr  x17, [x16, :lo12:g_real_mciGetDeviceIDA]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetDeviceIDA
mciGetDeviceIDA:
    jmp *g_real_mciGetDeviceIDA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetDeviceIDFromElementIDA
    .p2align 2
mciGetDeviceIDFromElementIDA:
    adrp x16, g_real_mciGetDeviceIDFromElementIDA
    ldr  x17, [x16, :lo12:g_real_mciGetDeviceIDFromElementIDA]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetDeviceIDFromElementIDA
mciGetDeviceIDFromElementIDA:
    jmp *g_real_mciGetDeviceIDFromElementIDA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetDeviceIDFromElementIDW
    .p2align 2
mciGetDeviceIDFromElementIDW:
    adrp x16, g_real_mciGetDeviceIDFromElementIDW
    ldr  x17, [x16, :lo12:g_real_mciGetDeviceIDFromElementIDW]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetDeviceIDFromElementIDW
mciGetDeviceIDFromElementIDW:
    jmp *g_real_mciGetDeviceIDFromElementIDW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetDeviceIDW
    .p2align 2
mciGetDeviceIDW:
    adrp x16, g_real_mciGetDeviceIDW
    ldr  x17, [x16, :lo12:g_real_mciGetDeviceIDW]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetDeviceIDW
mciGetDeviceIDW:
    jmp *g_real_mciGetDeviceIDW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetDriverData
    .p2align 2
mciGetDriverData:
    adrp x16, g_real_mciGetDriverData
    ldr  x17, [x16, :lo12:g_real_mciGetDriverData]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetDriverData
mciGetDriverData:
    jmp *g_real_mciGetDriverData(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetErrorStringA
    .p2align 2
mciGetErrorStringA:
    adrp x16, g_real_mciGetErrorStringA
    ldr  x17, [x16, :lo12:g_real_mciGetErrorStringA]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetErrorStringA
mciGetErrorStringA:
    jmp *g_real_mciGetErrorStringA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetErrorStringW
    .p2align 2
mciGetErrorStringW:
    adrp x16, g_real_mciGetErrorStringW
    ldr  x17, [x16, :lo12:g_real_mciGetErrorStringW]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetErrorStringW
mciGetErrorStringW:
    jmp *g_real_mciGetErrorStringW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciGetYieldProc
    .p2align 2
mciGetYieldProc:
    adrp x16, g_real_mciGetYieldProc
    ldr  x17, [x16, :lo12:g_real_mciGetYieldProc]
    br   x17
#elif defined(__x86_64__)
    .globl mciGetYieldProc
mciGetYieldProc:
    jmp *g_real_mciGetYieldProc(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciLoadCommandResource
    .p2align 2
mciLoadCommandResource:
    adrp x16, g_real_mciLoadCommandResource
    ldr  x17, [x16, :lo12:g_real_mciLoadCommandResource]
    br   x17
#elif defined(__x86_64__)
    .globl mciLoadCommandResource
mciLoadCommandResource:
    jmp *g_real_mciLoadCommandResource(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSendCommandA
    .p2align 2
mciSendCommandA:
    adrp x16, g_real_mciSendCommandA
    ldr  x17, [x16, :lo12:g_real_mciSendCommandA]
    br   x17
#elif defined(__x86_64__)
    .globl mciSendCommandA
mciSendCommandA:
    jmp *g_real_mciSendCommandA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSendCommandW
    .p2align 2
mciSendCommandW:
    adrp x16, g_real_mciSendCommandW
    ldr  x17, [x16, :lo12:g_real_mciSendCommandW]
    br   x17
#elif defined(__x86_64__)
    .globl mciSendCommandW
mciSendCommandW:
    jmp *g_real_mciSendCommandW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSendStringA
    .p2align 2
mciSendStringA:
    adrp x16, g_real_mciSendStringA
    ldr  x17, [x16, :lo12:g_real_mciSendStringA]
    br   x17
#elif defined(__x86_64__)
    .globl mciSendStringA
mciSendStringA:
    jmp *g_real_mciSendStringA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSendStringW
    .p2align 2
mciSendStringW:
    adrp x16, g_real_mciSendStringW
    ldr  x17, [x16, :lo12:g_real_mciSendStringW]
    br   x17
#elif defined(__x86_64__)
    .globl mciSendStringW
mciSendStringW:
    jmp *g_real_mciSendStringW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSetDriverData
    .p2align 2
mciSetDriverData:
    adrp x16, g_real_mciSetDriverData
    ldr  x17, [x16, :lo12:g_real_mciSetDriverData]
    br   x17
#elif defined(__x86_64__)
    .globl mciSetDriverData
mciSetDriverData:
    jmp *g_real_mciSetDriverData(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mciSetYieldProc
    .p2align 2
mciSetYieldProc:
    adrp x16, g_real_mciSetYieldProc
    ldr  x17, [x16, :lo12:g_real_mciSetYieldProc]
    br   x17
#elif defined(__x86_64__)
    .globl mciSetYieldProc
mciSetYieldProc:
    jmp *g_real_mciSetYieldProc(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiConnect
    .p2align 2
midiConnect:
    adrp x16, g_real_midiConnect
    ldr  x17, [x16, :lo12:g_real_midiConnect]
    br   x17
#elif defined(__x86_64__)
    .globl midiConnect
midiConnect:
    jmp *g_real_midiConnect(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiDisconnect
    .p2align 2
midiDisconnect:
    adrp x16, g_real_midiDisconnect
    ldr  x17, [x16, :lo12:g_real_midiDisconnect]
    br   x17
#elif defined(__x86_64__)
    .globl midiDisconnect
midiDisconnect:
    jmp *g_real_midiDisconnect(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInAddBuffer
    .p2align 2
midiInAddBuffer:
    adrp x16, g_real_midiInAddBuffer
    ldr  x17, [x16, :lo12:g_real_midiInAddBuffer]
    br   x17
#elif defined(__x86_64__)
    .globl midiInAddBuffer
midiInAddBuffer:
    jmp *g_real_midiInAddBuffer(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInClose
    .p2align 2
midiInClose:
    adrp x16, g_real_midiInClose
    ldr  x17, [x16, :lo12:g_real_midiInClose]
    br   x17
#elif defined(__x86_64__)
    .globl midiInClose
midiInClose:
    jmp *g_real_midiInClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetDevCapsA
    .p2align 2
midiInGetDevCapsA:
    adrp x16, g_real_midiInGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_midiInGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetDevCapsA
midiInGetDevCapsA:
    jmp *g_real_midiInGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetDevCapsW
    .p2align 2
midiInGetDevCapsW:
    adrp x16, g_real_midiInGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_midiInGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetDevCapsW
midiInGetDevCapsW:
    jmp *g_real_midiInGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetErrorTextA
    .p2align 2
midiInGetErrorTextA:
    adrp x16, g_real_midiInGetErrorTextA
    ldr  x17, [x16, :lo12:g_real_midiInGetErrorTextA]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetErrorTextA
midiInGetErrorTextA:
    jmp *g_real_midiInGetErrorTextA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetErrorTextW
    .p2align 2
midiInGetErrorTextW:
    adrp x16, g_real_midiInGetErrorTextW
    ldr  x17, [x16, :lo12:g_real_midiInGetErrorTextW]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetErrorTextW
midiInGetErrorTextW:
    jmp *g_real_midiInGetErrorTextW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetID
    .p2align 2
midiInGetID:
    adrp x16, g_real_midiInGetID
    ldr  x17, [x16, :lo12:g_real_midiInGetID]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetID
midiInGetID:
    jmp *g_real_midiInGetID(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInGetNumDevs
    .p2align 2
midiInGetNumDevs:
    adrp x16, g_real_midiInGetNumDevs
    ldr  x17, [x16, :lo12:g_real_midiInGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl midiInGetNumDevs
midiInGetNumDevs:
    jmp *g_real_midiInGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInMessage
    .p2align 2
midiInMessage:
    adrp x16, g_real_midiInMessage
    ldr  x17, [x16, :lo12:g_real_midiInMessage]
    br   x17
#elif defined(__x86_64__)
    .globl midiInMessage
midiInMessage:
    jmp *g_real_midiInMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInOpen
    .p2align 2
midiInOpen:
    adrp x16, g_real_midiInOpen
    ldr  x17, [x16, :lo12:g_real_midiInOpen]
    br   x17
#elif defined(__x86_64__)
    .globl midiInOpen
midiInOpen:
    jmp *g_real_midiInOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInPrepareHeader
    .p2align 2
midiInPrepareHeader:
    adrp x16, g_real_midiInPrepareHeader
    ldr  x17, [x16, :lo12:g_real_midiInPrepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl midiInPrepareHeader
midiInPrepareHeader:
    jmp *g_real_midiInPrepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInReset
    .p2align 2
midiInReset:
    adrp x16, g_real_midiInReset
    ldr  x17, [x16, :lo12:g_real_midiInReset]
    br   x17
#elif defined(__x86_64__)
    .globl midiInReset
midiInReset:
    jmp *g_real_midiInReset(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInStart
    .p2align 2
midiInStart:
    adrp x16, g_real_midiInStart
    ldr  x17, [x16, :lo12:g_real_midiInStart]
    br   x17
#elif defined(__x86_64__)
    .globl midiInStart
midiInStart:
    jmp *g_real_midiInStart(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInStop
    .p2align 2
midiInStop:
    adrp x16, g_real_midiInStop
    ldr  x17, [x16, :lo12:g_real_midiInStop]
    br   x17
#elif defined(__x86_64__)
    .globl midiInStop
midiInStop:
    jmp *g_real_midiInStop(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiInUnprepareHeader
    .p2align 2
midiInUnprepareHeader:
    adrp x16, g_real_midiInUnprepareHeader
    ldr  x17, [x16, :lo12:g_real_midiInUnprepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl midiInUnprepareHeader
midiInUnprepareHeader:
    jmp *g_real_midiInUnprepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutCacheDrumPatches
    .p2align 2
midiOutCacheDrumPatches:
    adrp x16, g_real_midiOutCacheDrumPatches
    ldr  x17, [x16, :lo12:g_real_midiOutCacheDrumPatches]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutCacheDrumPatches
midiOutCacheDrumPatches:
    jmp *g_real_midiOutCacheDrumPatches(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutCachePatches
    .p2align 2
midiOutCachePatches:
    adrp x16, g_real_midiOutCachePatches
    ldr  x17, [x16, :lo12:g_real_midiOutCachePatches]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutCachePatches
midiOutCachePatches:
    jmp *g_real_midiOutCachePatches(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutClose
    .p2align 2
midiOutClose:
    adrp x16, g_real_midiOutClose
    ldr  x17, [x16, :lo12:g_real_midiOutClose]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutClose
midiOutClose:
    jmp *g_real_midiOutClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetDevCapsA
    .p2align 2
midiOutGetDevCapsA:
    adrp x16, g_real_midiOutGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_midiOutGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetDevCapsA
midiOutGetDevCapsA:
    jmp *g_real_midiOutGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetDevCapsW
    .p2align 2
midiOutGetDevCapsW:
    adrp x16, g_real_midiOutGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_midiOutGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetDevCapsW
midiOutGetDevCapsW:
    jmp *g_real_midiOutGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetErrorTextA
    .p2align 2
midiOutGetErrorTextA:
    adrp x16, g_real_midiOutGetErrorTextA
    ldr  x17, [x16, :lo12:g_real_midiOutGetErrorTextA]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetErrorTextA
midiOutGetErrorTextA:
    jmp *g_real_midiOutGetErrorTextA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetErrorTextW
    .p2align 2
midiOutGetErrorTextW:
    adrp x16, g_real_midiOutGetErrorTextW
    ldr  x17, [x16, :lo12:g_real_midiOutGetErrorTextW]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetErrorTextW
midiOutGetErrorTextW:
    jmp *g_real_midiOutGetErrorTextW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetID
    .p2align 2
midiOutGetID:
    adrp x16, g_real_midiOutGetID
    ldr  x17, [x16, :lo12:g_real_midiOutGetID]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetID
midiOutGetID:
    jmp *g_real_midiOutGetID(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetNumDevs
    .p2align 2
midiOutGetNumDevs:
    adrp x16, g_real_midiOutGetNumDevs
    ldr  x17, [x16, :lo12:g_real_midiOutGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetNumDevs
midiOutGetNumDevs:
    jmp *g_real_midiOutGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutGetVolume
    .p2align 2
midiOutGetVolume:
    adrp x16, g_real_midiOutGetVolume
    ldr  x17, [x16, :lo12:g_real_midiOutGetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutGetVolume
midiOutGetVolume:
    jmp *g_real_midiOutGetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutLongMsg
    .p2align 2
midiOutLongMsg:
    adrp x16, g_real_midiOutLongMsg
    ldr  x17, [x16, :lo12:g_real_midiOutLongMsg]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutLongMsg
midiOutLongMsg:
    jmp *g_real_midiOutLongMsg(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutMessage
    .p2align 2
midiOutMessage:
    adrp x16, g_real_midiOutMessage
    ldr  x17, [x16, :lo12:g_real_midiOutMessage]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutMessage
midiOutMessage:
    jmp *g_real_midiOutMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutOpen
    .p2align 2
midiOutOpen:
    adrp x16, g_real_midiOutOpen
    ldr  x17, [x16, :lo12:g_real_midiOutOpen]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutOpen
midiOutOpen:
    jmp *g_real_midiOutOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutPrepareHeader
    .p2align 2
midiOutPrepareHeader:
    adrp x16, g_real_midiOutPrepareHeader
    ldr  x17, [x16, :lo12:g_real_midiOutPrepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutPrepareHeader
midiOutPrepareHeader:
    jmp *g_real_midiOutPrepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutReset
    .p2align 2
midiOutReset:
    adrp x16, g_real_midiOutReset
    ldr  x17, [x16, :lo12:g_real_midiOutReset]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutReset
midiOutReset:
    jmp *g_real_midiOutReset(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutSetVolume
    .p2align 2
midiOutSetVolume:
    adrp x16, g_real_midiOutSetVolume
    ldr  x17, [x16, :lo12:g_real_midiOutSetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutSetVolume
midiOutSetVolume:
    jmp *g_real_midiOutSetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutShortMsg
    .p2align 2
midiOutShortMsg:
    adrp x16, g_real_midiOutShortMsg
    ldr  x17, [x16, :lo12:g_real_midiOutShortMsg]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutShortMsg
midiOutShortMsg:
    jmp *g_real_midiOutShortMsg(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiOutUnprepareHeader
    .p2align 2
midiOutUnprepareHeader:
    adrp x16, g_real_midiOutUnprepareHeader
    ldr  x17, [x16, :lo12:g_real_midiOutUnprepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl midiOutUnprepareHeader
midiOutUnprepareHeader:
    jmp *g_real_midiOutUnprepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamClose
    .p2align 2
midiStreamClose:
    adrp x16, g_real_midiStreamClose
    ldr  x17, [x16, :lo12:g_real_midiStreamClose]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamClose
midiStreamClose:
    jmp *g_real_midiStreamClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamOpen
    .p2align 2
midiStreamOpen:
    adrp x16, g_real_midiStreamOpen
    ldr  x17, [x16, :lo12:g_real_midiStreamOpen]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamOpen
midiStreamOpen:
    jmp *g_real_midiStreamOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamOut
    .p2align 2
midiStreamOut:
    adrp x16, g_real_midiStreamOut
    ldr  x17, [x16, :lo12:g_real_midiStreamOut]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamOut
midiStreamOut:
    jmp *g_real_midiStreamOut(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamPause
    .p2align 2
midiStreamPause:
    adrp x16, g_real_midiStreamPause
    ldr  x17, [x16, :lo12:g_real_midiStreamPause]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamPause
midiStreamPause:
    jmp *g_real_midiStreamPause(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamPosition
    .p2align 2
midiStreamPosition:
    adrp x16, g_real_midiStreamPosition
    ldr  x17, [x16, :lo12:g_real_midiStreamPosition]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamPosition
midiStreamPosition:
    jmp *g_real_midiStreamPosition(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamProperty
    .p2align 2
midiStreamProperty:
    adrp x16, g_real_midiStreamProperty
    ldr  x17, [x16, :lo12:g_real_midiStreamProperty]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamProperty
midiStreamProperty:
    jmp *g_real_midiStreamProperty(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamRestart
    .p2align 2
midiStreamRestart:
    adrp x16, g_real_midiStreamRestart
    ldr  x17, [x16, :lo12:g_real_midiStreamRestart]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamRestart
midiStreamRestart:
    jmp *g_real_midiStreamRestart(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl midiStreamStop
    .p2align 2
midiStreamStop:
    adrp x16, g_real_midiStreamStop
    ldr  x17, [x16, :lo12:g_real_midiStreamStop]
    br   x17
#elif defined(__x86_64__)
    .globl midiStreamStop
midiStreamStop:
    jmp *g_real_midiStreamStop(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerClose
    .p2align 2
mixerClose:
    adrp x16, g_real_mixerClose
    ldr  x17, [x16, :lo12:g_real_mixerClose]
    br   x17
#elif defined(__x86_64__)
    .globl mixerClose
mixerClose:
    jmp *g_real_mixerClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetControlDetailsA
    .p2align 2
mixerGetControlDetailsA:
    adrp x16, g_real_mixerGetControlDetailsA
    ldr  x17, [x16, :lo12:g_real_mixerGetControlDetailsA]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetControlDetailsA
mixerGetControlDetailsA:
    jmp *g_real_mixerGetControlDetailsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetControlDetailsW
    .p2align 2
mixerGetControlDetailsW:
    adrp x16, g_real_mixerGetControlDetailsW
    ldr  x17, [x16, :lo12:g_real_mixerGetControlDetailsW]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetControlDetailsW
mixerGetControlDetailsW:
    jmp *g_real_mixerGetControlDetailsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetDevCapsA
    .p2align 2
mixerGetDevCapsA:
    adrp x16, g_real_mixerGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_mixerGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetDevCapsA
mixerGetDevCapsA:
    jmp *g_real_mixerGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetDevCapsW
    .p2align 2
mixerGetDevCapsW:
    adrp x16, g_real_mixerGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_mixerGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetDevCapsW
mixerGetDevCapsW:
    jmp *g_real_mixerGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetID
    .p2align 2
mixerGetID:
    adrp x16, g_real_mixerGetID
    ldr  x17, [x16, :lo12:g_real_mixerGetID]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetID
mixerGetID:
    jmp *g_real_mixerGetID(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetLineControlsA
    .p2align 2
mixerGetLineControlsA:
    adrp x16, g_real_mixerGetLineControlsA
    ldr  x17, [x16, :lo12:g_real_mixerGetLineControlsA]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetLineControlsA
mixerGetLineControlsA:
    jmp *g_real_mixerGetLineControlsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetLineControlsW
    .p2align 2
mixerGetLineControlsW:
    adrp x16, g_real_mixerGetLineControlsW
    ldr  x17, [x16, :lo12:g_real_mixerGetLineControlsW]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetLineControlsW
mixerGetLineControlsW:
    jmp *g_real_mixerGetLineControlsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetLineInfoA
    .p2align 2
mixerGetLineInfoA:
    adrp x16, g_real_mixerGetLineInfoA
    ldr  x17, [x16, :lo12:g_real_mixerGetLineInfoA]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetLineInfoA
mixerGetLineInfoA:
    jmp *g_real_mixerGetLineInfoA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetLineInfoW
    .p2align 2
mixerGetLineInfoW:
    adrp x16, g_real_mixerGetLineInfoW
    ldr  x17, [x16, :lo12:g_real_mixerGetLineInfoW]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetLineInfoW
mixerGetLineInfoW:
    jmp *g_real_mixerGetLineInfoW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerGetNumDevs
    .p2align 2
mixerGetNumDevs:
    adrp x16, g_real_mixerGetNumDevs
    ldr  x17, [x16, :lo12:g_real_mixerGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl mixerGetNumDevs
mixerGetNumDevs:
    jmp *g_real_mixerGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerMessage
    .p2align 2
mixerMessage:
    adrp x16, g_real_mixerMessage
    ldr  x17, [x16, :lo12:g_real_mixerMessage]
    br   x17
#elif defined(__x86_64__)
    .globl mixerMessage
mixerMessage:
    jmp *g_real_mixerMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerOpen
    .p2align 2
mixerOpen:
    adrp x16, g_real_mixerOpen
    ldr  x17, [x16, :lo12:g_real_mixerOpen]
    br   x17
#elif defined(__x86_64__)
    .globl mixerOpen
mixerOpen:
    jmp *g_real_mixerOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mixerSetControlDetails
    .p2align 2
mixerSetControlDetails:
    adrp x16, g_real_mixerSetControlDetails
    ldr  x17, [x16, :lo12:g_real_mixerSetControlDetails]
    br   x17
#elif defined(__x86_64__)
    .globl mixerSetControlDetails
mixerSetControlDetails:
    jmp *g_real_mixerSetControlDetails(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmDrvInstall
    .p2align 2
mmDrvInstall:
    adrp x16, g_real_mmDrvInstall
    ldr  x17, [x16, :lo12:g_real_mmDrvInstall]
    br   x17
#elif defined(__x86_64__)
    .globl mmDrvInstall
mmDrvInstall:
    jmp *g_real_mmDrvInstall(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmGetCurrentTask
    .p2align 2
mmGetCurrentTask:
    adrp x16, g_real_mmGetCurrentTask
    ldr  x17, [x16, :lo12:g_real_mmGetCurrentTask]
    br   x17
#elif defined(__x86_64__)
    .globl mmGetCurrentTask
mmGetCurrentTask:
    jmp *g_real_mmGetCurrentTask(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmTaskBlock
    .p2align 2
mmTaskBlock:
    adrp x16, g_real_mmTaskBlock
    ldr  x17, [x16, :lo12:g_real_mmTaskBlock]
    br   x17
#elif defined(__x86_64__)
    .globl mmTaskBlock
mmTaskBlock:
    jmp *g_real_mmTaskBlock(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmTaskCreate
    .p2align 2
mmTaskCreate:
    adrp x16, g_real_mmTaskCreate
    ldr  x17, [x16, :lo12:g_real_mmTaskCreate]
    br   x17
#elif defined(__x86_64__)
    .globl mmTaskCreate
mmTaskCreate:
    jmp *g_real_mmTaskCreate(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmTaskSignal
    .p2align 2
mmTaskSignal:
    adrp x16, g_real_mmTaskSignal
    ldr  x17, [x16, :lo12:g_real_mmTaskSignal]
    br   x17
#elif defined(__x86_64__)
    .globl mmTaskSignal
mmTaskSignal:
    jmp *g_real_mmTaskSignal(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmTaskYield
    .p2align 2
mmTaskYield:
    adrp x16, g_real_mmTaskYield
    ldr  x17, [x16, :lo12:g_real_mmTaskYield]
    br   x17
#elif defined(__x86_64__)
    .globl mmTaskYield
mmTaskYield:
    jmp *g_real_mmTaskYield(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioAdvance
    .p2align 2
mmioAdvance:
    adrp x16, g_real_mmioAdvance
    ldr  x17, [x16, :lo12:g_real_mmioAdvance]
    br   x17
#elif defined(__x86_64__)
    .globl mmioAdvance
mmioAdvance:
    jmp *g_real_mmioAdvance(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioAscend
    .p2align 2
mmioAscend:
    adrp x16, g_real_mmioAscend
    ldr  x17, [x16, :lo12:g_real_mmioAscend]
    br   x17
#elif defined(__x86_64__)
    .globl mmioAscend
mmioAscend:
    jmp *g_real_mmioAscend(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioClose
    .p2align 2
mmioClose:
    adrp x16, g_real_mmioClose
    ldr  x17, [x16, :lo12:g_real_mmioClose]
    br   x17
#elif defined(__x86_64__)
    .globl mmioClose
mmioClose:
    jmp *g_real_mmioClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioCreateChunk
    .p2align 2
mmioCreateChunk:
    adrp x16, g_real_mmioCreateChunk
    ldr  x17, [x16, :lo12:g_real_mmioCreateChunk]
    br   x17
#elif defined(__x86_64__)
    .globl mmioCreateChunk
mmioCreateChunk:
    jmp *g_real_mmioCreateChunk(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioDescend
    .p2align 2
mmioDescend:
    adrp x16, g_real_mmioDescend
    ldr  x17, [x16, :lo12:g_real_mmioDescend]
    br   x17
#elif defined(__x86_64__)
    .globl mmioDescend
mmioDescend:
    jmp *g_real_mmioDescend(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioFlush
    .p2align 2
mmioFlush:
    adrp x16, g_real_mmioFlush
    ldr  x17, [x16, :lo12:g_real_mmioFlush]
    br   x17
#elif defined(__x86_64__)
    .globl mmioFlush
mmioFlush:
    jmp *g_real_mmioFlush(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioGetInfo
    .p2align 2
mmioGetInfo:
    adrp x16, g_real_mmioGetInfo
    ldr  x17, [x16, :lo12:g_real_mmioGetInfo]
    br   x17
#elif defined(__x86_64__)
    .globl mmioGetInfo
mmioGetInfo:
    jmp *g_real_mmioGetInfo(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioInstallIOProcA
    .p2align 2
mmioInstallIOProcA:
    adrp x16, g_real_mmioInstallIOProcA
    ldr  x17, [x16, :lo12:g_real_mmioInstallIOProcA]
    br   x17
#elif defined(__x86_64__)
    .globl mmioInstallIOProcA
mmioInstallIOProcA:
    jmp *g_real_mmioInstallIOProcA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioInstallIOProcW
    .p2align 2
mmioInstallIOProcW:
    adrp x16, g_real_mmioInstallIOProcW
    ldr  x17, [x16, :lo12:g_real_mmioInstallIOProcW]
    br   x17
#elif defined(__x86_64__)
    .globl mmioInstallIOProcW
mmioInstallIOProcW:
    jmp *g_real_mmioInstallIOProcW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioOpenA
    .p2align 2
mmioOpenA:
    adrp x16, g_real_mmioOpenA
    ldr  x17, [x16, :lo12:g_real_mmioOpenA]
    br   x17
#elif defined(__x86_64__)
    .globl mmioOpenA
mmioOpenA:
    jmp *g_real_mmioOpenA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioOpenW
    .p2align 2
mmioOpenW:
    adrp x16, g_real_mmioOpenW
    ldr  x17, [x16, :lo12:g_real_mmioOpenW]
    br   x17
#elif defined(__x86_64__)
    .globl mmioOpenW
mmioOpenW:
    jmp *g_real_mmioOpenW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioRead
    .p2align 2
mmioRead:
    adrp x16, g_real_mmioRead
    ldr  x17, [x16, :lo12:g_real_mmioRead]
    br   x17
#elif defined(__x86_64__)
    .globl mmioRead
mmioRead:
    jmp *g_real_mmioRead(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioRenameA
    .p2align 2
mmioRenameA:
    adrp x16, g_real_mmioRenameA
    ldr  x17, [x16, :lo12:g_real_mmioRenameA]
    br   x17
#elif defined(__x86_64__)
    .globl mmioRenameA
mmioRenameA:
    jmp *g_real_mmioRenameA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioRenameW
    .p2align 2
mmioRenameW:
    adrp x16, g_real_mmioRenameW
    ldr  x17, [x16, :lo12:g_real_mmioRenameW]
    br   x17
#elif defined(__x86_64__)
    .globl mmioRenameW
mmioRenameW:
    jmp *g_real_mmioRenameW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioSeek
    .p2align 2
mmioSeek:
    adrp x16, g_real_mmioSeek
    ldr  x17, [x16, :lo12:g_real_mmioSeek]
    br   x17
#elif defined(__x86_64__)
    .globl mmioSeek
mmioSeek:
    jmp *g_real_mmioSeek(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioSendMessage
    .p2align 2
mmioSendMessage:
    adrp x16, g_real_mmioSendMessage
    ldr  x17, [x16, :lo12:g_real_mmioSendMessage]
    br   x17
#elif defined(__x86_64__)
    .globl mmioSendMessage
mmioSendMessage:
    jmp *g_real_mmioSendMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioSetBuffer
    .p2align 2
mmioSetBuffer:
    adrp x16, g_real_mmioSetBuffer
    ldr  x17, [x16, :lo12:g_real_mmioSetBuffer]
    br   x17
#elif defined(__x86_64__)
    .globl mmioSetBuffer
mmioSetBuffer:
    jmp *g_real_mmioSetBuffer(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioSetInfo
    .p2align 2
mmioSetInfo:
    adrp x16, g_real_mmioSetInfo
    ldr  x17, [x16, :lo12:g_real_mmioSetInfo]
    br   x17
#elif defined(__x86_64__)
    .globl mmioSetInfo
mmioSetInfo:
    jmp *g_real_mmioSetInfo(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioStringToFOURCCA
    .p2align 2
mmioStringToFOURCCA:
    adrp x16, g_real_mmioStringToFOURCCA
    ldr  x17, [x16, :lo12:g_real_mmioStringToFOURCCA]
    br   x17
#elif defined(__x86_64__)
    .globl mmioStringToFOURCCA
mmioStringToFOURCCA:
    jmp *g_real_mmioStringToFOURCCA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioStringToFOURCCW
    .p2align 2
mmioStringToFOURCCW:
    adrp x16, g_real_mmioStringToFOURCCW
    ldr  x17, [x16, :lo12:g_real_mmioStringToFOURCCW]
    br   x17
#elif defined(__x86_64__)
    .globl mmioStringToFOURCCW
mmioStringToFOURCCW:
    jmp *g_real_mmioStringToFOURCCW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmioWrite
    .p2align 2
mmioWrite:
    adrp x16, g_real_mmioWrite
    ldr  x17, [x16, :lo12:g_real_mmioWrite]
    br   x17
#elif defined(__x86_64__)
    .globl mmioWrite
mmioWrite:
    jmp *g_real_mmioWrite(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl mmsystemGetVersion
    .p2align 2
mmsystemGetVersion:
    adrp x16, g_real_mmsystemGetVersion
    ldr  x17, [x16, :lo12:g_real_mmsystemGetVersion]
    br   x17
#elif defined(__x86_64__)
    .globl mmsystemGetVersion
mmsystemGetVersion:
    jmp *g_real_mmsystemGetVersion(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl sndPlaySoundA
    .p2align 2
sndPlaySoundA:
    adrp x16, g_real_sndPlaySoundA
    ldr  x17, [x16, :lo12:g_real_sndPlaySoundA]
    br   x17
#elif defined(__x86_64__)
    .globl sndPlaySoundA
sndPlaySoundA:
    jmp *g_real_sndPlaySoundA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl sndPlaySoundW
    .p2align 2
sndPlaySoundW:
    adrp x16, g_real_sndPlaySoundW
    ldr  x17, [x16, :lo12:g_real_sndPlaySoundW]
    br   x17
#elif defined(__x86_64__)
    .globl sndPlaySoundW
sndPlaySoundW:
    jmp *g_real_sndPlaySoundW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeBeginPeriod
    .p2align 2
timeBeginPeriod:
    adrp x16, g_real_timeBeginPeriod
    ldr  x17, [x16, :lo12:g_real_timeBeginPeriod]
    br   x17
#elif defined(__x86_64__)
    .globl timeBeginPeriod
timeBeginPeriod:
    jmp *g_real_timeBeginPeriod(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeEndPeriod
    .p2align 2
timeEndPeriod:
    adrp x16, g_real_timeEndPeriod
    ldr  x17, [x16, :lo12:g_real_timeEndPeriod]
    br   x17
#elif defined(__x86_64__)
    .globl timeEndPeriod
timeEndPeriod:
    jmp *g_real_timeEndPeriod(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeGetDevCaps
    .p2align 2
timeGetDevCaps:
    adrp x16, g_real_timeGetDevCaps
    ldr  x17, [x16, :lo12:g_real_timeGetDevCaps]
    br   x17
#elif defined(__x86_64__)
    .globl timeGetDevCaps
timeGetDevCaps:
    jmp *g_real_timeGetDevCaps(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeGetSystemTime
    .p2align 2
timeGetSystemTime:
    adrp x16, g_real_timeGetSystemTime
    ldr  x17, [x16, :lo12:g_real_timeGetSystemTime]
    br   x17
#elif defined(__x86_64__)
    .globl timeGetSystemTime
timeGetSystemTime:
    jmp *g_real_timeGetSystemTime(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeGetTime
    .p2align 2
timeGetTime:
    adrp x16, g_real_timeGetTime
    ldr  x17, [x16, :lo12:g_real_timeGetTime]
    br   x17
#elif defined(__x86_64__)
    .globl timeGetTime
timeGetTime:
    jmp *g_real_timeGetTime(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeKillEvent
    .p2align 2
timeKillEvent:
    adrp x16, g_real_timeKillEvent
    ldr  x17, [x16, :lo12:g_real_timeKillEvent]
    br   x17
#elif defined(__x86_64__)
    .globl timeKillEvent
timeKillEvent:
    jmp *g_real_timeKillEvent(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl timeSetEvent
    .p2align 2
timeSetEvent:
    adrp x16, g_real_timeSetEvent
    ldr  x17, [x16, :lo12:g_real_timeSetEvent]
    br   x17
#elif defined(__x86_64__)
    .globl timeSetEvent
timeSetEvent:
    jmp *g_real_timeSetEvent(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInAddBuffer
    .p2align 2
waveInAddBuffer:
    adrp x16, g_real_waveInAddBuffer
    ldr  x17, [x16, :lo12:g_real_waveInAddBuffer]
    br   x17
#elif defined(__x86_64__)
    .globl waveInAddBuffer
waveInAddBuffer:
    jmp *g_real_waveInAddBuffer(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInClose
    .p2align 2
waveInClose:
    adrp x16, g_real_waveInClose
    ldr  x17, [x16, :lo12:g_real_waveInClose]
    br   x17
#elif defined(__x86_64__)
    .globl waveInClose
waveInClose:
    jmp *g_real_waveInClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetDevCapsA
    .p2align 2
waveInGetDevCapsA:
    adrp x16, g_real_waveInGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_waveInGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetDevCapsA
waveInGetDevCapsA:
    jmp *g_real_waveInGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetDevCapsW
    .p2align 2
waveInGetDevCapsW:
    adrp x16, g_real_waveInGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_waveInGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetDevCapsW
waveInGetDevCapsW:
    jmp *g_real_waveInGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetErrorTextA
    .p2align 2
waveInGetErrorTextA:
    adrp x16, g_real_waveInGetErrorTextA
    ldr  x17, [x16, :lo12:g_real_waveInGetErrorTextA]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetErrorTextA
waveInGetErrorTextA:
    jmp *g_real_waveInGetErrorTextA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetErrorTextW
    .p2align 2
waveInGetErrorTextW:
    adrp x16, g_real_waveInGetErrorTextW
    ldr  x17, [x16, :lo12:g_real_waveInGetErrorTextW]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetErrorTextW
waveInGetErrorTextW:
    jmp *g_real_waveInGetErrorTextW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetID
    .p2align 2
waveInGetID:
    adrp x16, g_real_waveInGetID
    ldr  x17, [x16, :lo12:g_real_waveInGetID]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetID
waveInGetID:
    jmp *g_real_waveInGetID(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetNumDevs
    .p2align 2
waveInGetNumDevs:
    adrp x16, g_real_waveInGetNumDevs
    ldr  x17, [x16, :lo12:g_real_waveInGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetNumDevs
waveInGetNumDevs:
    jmp *g_real_waveInGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInGetPosition
    .p2align 2
waveInGetPosition:
    adrp x16, g_real_waveInGetPosition
    ldr  x17, [x16, :lo12:g_real_waveInGetPosition]
    br   x17
#elif defined(__x86_64__)
    .globl waveInGetPosition
waveInGetPosition:
    jmp *g_real_waveInGetPosition(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInMessage
    .p2align 2
waveInMessage:
    adrp x16, g_real_waveInMessage
    ldr  x17, [x16, :lo12:g_real_waveInMessage]
    br   x17
#elif defined(__x86_64__)
    .globl waveInMessage
waveInMessage:
    jmp *g_real_waveInMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInOpen
    .p2align 2
waveInOpen:
    adrp x16, g_real_waveInOpen
    ldr  x17, [x16, :lo12:g_real_waveInOpen]
    br   x17
#elif defined(__x86_64__)
    .globl waveInOpen
waveInOpen:
    jmp *g_real_waveInOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInPrepareHeader
    .p2align 2
waveInPrepareHeader:
    adrp x16, g_real_waveInPrepareHeader
    ldr  x17, [x16, :lo12:g_real_waveInPrepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl waveInPrepareHeader
waveInPrepareHeader:
    jmp *g_real_waveInPrepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInReset
    .p2align 2
waveInReset:
    adrp x16, g_real_waveInReset
    ldr  x17, [x16, :lo12:g_real_waveInReset]
    br   x17
#elif defined(__x86_64__)
    .globl waveInReset
waveInReset:
    jmp *g_real_waveInReset(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInStart
    .p2align 2
waveInStart:
    adrp x16, g_real_waveInStart
    ldr  x17, [x16, :lo12:g_real_waveInStart]
    br   x17
#elif defined(__x86_64__)
    .globl waveInStart
waveInStart:
    jmp *g_real_waveInStart(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInStop
    .p2align 2
waveInStop:
    adrp x16, g_real_waveInStop
    ldr  x17, [x16, :lo12:g_real_waveInStop]
    br   x17
#elif defined(__x86_64__)
    .globl waveInStop
waveInStop:
    jmp *g_real_waveInStop(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveInUnprepareHeader
    .p2align 2
waveInUnprepareHeader:
    adrp x16, g_real_waveInUnprepareHeader
    ldr  x17, [x16, :lo12:g_real_waveInUnprepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl waveInUnprepareHeader
waveInUnprepareHeader:
    jmp *g_real_waveInUnprepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutBreakLoop
    .p2align 2
waveOutBreakLoop:
    adrp x16, g_real_waveOutBreakLoop
    ldr  x17, [x16, :lo12:g_real_waveOutBreakLoop]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutBreakLoop
waveOutBreakLoop:
    jmp *g_real_waveOutBreakLoop(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutClose
    .p2align 2
waveOutClose:
    adrp x16, g_real_waveOutClose
    ldr  x17, [x16, :lo12:g_real_waveOutClose]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutClose
waveOutClose:
    jmp *g_real_waveOutClose(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetDevCapsA
    .p2align 2
waveOutGetDevCapsA:
    adrp x16, g_real_waveOutGetDevCapsA
    ldr  x17, [x16, :lo12:g_real_waveOutGetDevCapsA]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetDevCapsA
waveOutGetDevCapsA:
    jmp *g_real_waveOutGetDevCapsA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetDevCapsW
    .p2align 2
waveOutGetDevCapsW:
    adrp x16, g_real_waveOutGetDevCapsW
    ldr  x17, [x16, :lo12:g_real_waveOutGetDevCapsW]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetDevCapsW
waveOutGetDevCapsW:
    jmp *g_real_waveOutGetDevCapsW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetErrorTextA
    .p2align 2
waveOutGetErrorTextA:
    adrp x16, g_real_waveOutGetErrorTextA
    ldr  x17, [x16, :lo12:g_real_waveOutGetErrorTextA]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetErrorTextA
waveOutGetErrorTextA:
    jmp *g_real_waveOutGetErrorTextA(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetErrorTextW
    .p2align 2
waveOutGetErrorTextW:
    adrp x16, g_real_waveOutGetErrorTextW
    ldr  x17, [x16, :lo12:g_real_waveOutGetErrorTextW]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetErrorTextW
waveOutGetErrorTextW:
    jmp *g_real_waveOutGetErrorTextW(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetID
    .p2align 2
waveOutGetID:
    adrp x16, g_real_waveOutGetID
    ldr  x17, [x16, :lo12:g_real_waveOutGetID]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetID
waveOutGetID:
    jmp *g_real_waveOutGetID(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetNumDevs
    .p2align 2
waveOutGetNumDevs:
    adrp x16, g_real_waveOutGetNumDevs
    ldr  x17, [x16, :lo12:g_real_waveOutGetNumDevs]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetNumDevs
waveOutGetNumDevs:
    jmp *g_real_waveOutGetNumDevs(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetPitch
    .p2align 2
waveOutGetPitch:
    adrp x16, g_real_waveOutGetPitch
    ldr  x17, [x16, :lo12:g_real_waveOutGetPitch]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetPitch
waveOutGetPitch:
    jmp *g_real_waveOutGetPitch(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetPlaybackRate
    .p2align 2
waveOutGetPlaybackRate:
    adrp x16, g_real_waveOutGetPlaybackRate
    ldr  x17, [x16, :lo12:g_real_waveOutGetPlaybackRate]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetPlaybackRate
waveOutGetPlaybackRate:
    jmp *g_real_waveOutGetPlaybackRate(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetPosition
    .p2align 2
waveOutGetPosition:
    adrp x16, g_real_waveOutGetPosition
    ldr  x17, [x16, :lo12:g_real_waveOutGetPosition]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetPosition
waveOutGetPosition:
    jmp *g_real_waveOutGetPosition(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutGetVolume
    .p2align 2
waveOutGetVolume:
    adrp x16, g_real_waveOutGetVolume
    ldr  x17, [x16, :lo12:g_real_waveOutGetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutGetVolume
waveOutGetVolume:
    jmp *g_real_waveOutGetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutMessage
    .p2align 2
waveOutMessage:
    adrp x16, g_real_waveOutMessage
    ldr  x17, [x16, :lo12:g_real_waveOutMessage]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutMessage
waveOutMessage:
    jmp *g_real_waveOutMessage(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutOpen
    .p2align 2
waveOutOpen:
    adrp x16, g_real_waveOutOpen
    ldr  x17, [x16, :lo12:g_real_waveOutOpen]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutOpen
waveOutOpen:
    jmp *g_real_waveOutOpen(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutPause
    .p2align 2
waveOutPause:
    adrp x16, g_real_waveOutPause
    ldr  x17, [x16, :lo12:g_real_waveOutPause]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutPause
waveOutPause:
    jmp *g_real_waveOutPause(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutPrepareHeader
    .p2align 2
waveOutPrepareHeader:
    adrp x16, g_real_waveOutPrepareHeader
    ldr  x17, [x16, :lo12:g_real_waveOutPrepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutPrepareHeader
waveOutPrepareHeader:
    jmp *g_real_waveOutPrepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutReset
    .p2align 2
waveOutReset:
    adrp x16, g_real_waveOutReset
    ldr  x17, [x16, :lo12:g_real_waveOutReset]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutReset
waveOutReset:
    jmp *g_real_waveOutReset(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutRestart
    .p2align 2
waveOutRestart:
    adrp x16, g_real_waveOutRestart
    ldr  x17, [x16, :lo12:g_real_waveOutRestart]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutRestart
waveOutRestart:
    jmp *g_real_waveOutRestart(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutSetPitch
    .p2align 2
waveOutSetPitch:
    adrp x16, g_real_waveOutSetPitch
    ldr  x17, [x16, :lo12:g_real_waveOutSetPitch]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutSetPitch
waveOutSetPitch:
    jmp *g_real_waveOutSetPitch(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutSetPlaybackRate
    .p2align 2
waveOutSetPlaybackRate:
    adrp x16, g_real_waveOutSetPlaybackRate
    ldr  x17, [x16, :lo12:g_real_waveOutSetPlaybackRate]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutSetPlaybackRate
waveOutSetPlaybackRate:
    jmp *g_real_waveOutSetPlaybackRate(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutSetVolume
    .p2align 2
waveOutSetVolume:
    adrp x16, g_real_waveOutSetVolume
    ldr  x17, [x16, :lo12:g_real_waveOutSetVolume]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutSetVolume
waveOutSetVolume:
    jmp *g_real_waveOutSetVolume(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutUnprepareHeader
    .p2align 2
waveOutUnprepareHeader:
    adrp x16, g_real_waveOutUnprepareHeader
    ldr  x17, [x16, :lo12:g_real_waveOutUnprepareHeader]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutUnprepareHeader
waveOutUnprepareHeader:
    jmp *g_real_waveOutUnprepareHeader(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
#if defined(__aarch64__)
    .globl waveOutWrite
    .p2align 2
waveOutWrite:
    adrp x16, g_real_waveOutWrite
    ldr  x17, [x16, :lo12:g_real_waveOutWrite]
    br   x17
#elif defined(__x86_64__)
    .globl waveOutWrite
waveOutWrite:
    jmp *g_real_waveOutWrite(%rip)
#else
#error "winmm_stubs.S: unsupported architecture"
#endif
