aboutsummaryrefslogtreecommitdiffstats
path: root/router/al.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make some global and static member variables inlineChris Robinson2023-09-111-2/+0
| | | | | This also seems to work around the problematic MinGW code generation, so the indirection to access it can be removed.
* Make the router API functions noexceptChris Robinson2023-05-221-6/+6
|
* Add EFX functions back to the routerChris Robinson2022-06-181-0/+39
| | | | | They're necessary for proper exports whem building the router. And if there's ever a spec update that standardizes them, they'll be needed anyway.
* Don't handle EFX functions in the routerChris Robinson2022-02-261-36/+0
| | | | | | Creative's wrapper driver doesn't handle them through alcGetProcAddress, at least with a null device. For this to work properly, they'd have to be loaded per-context instead of per-driver.
* Work around a MinGW thread_local bugChris Robinson2021-12-201-6/+6
| | | | | | | | | | MinGW-w64 generates bad code when accessing extern thread_local objects. Wrapper functions are used to ensure it only accesses them from the same place they're defined. This unfortunately adds a bit of overhead for what should be a relatively simple thing. These functions are inlined for non-MinGW targets, avoiding the overhead on non-affected targets.
* Export EFX functions from the routerChris Robinson2021-01-271-0/+36
|
* Use C++ atomics and mutexes in the routerChris Robinson2018-10-301-13/+13
|
* Convert the router to C++Chris Robinson2018-10-301-0/+132