13
0
livetrax/libs
Ayan Shafqat bb31125c94
Fix CPUID to detect AVX512F
CPUID is part of x86_64 ISA to query CPU features. In order to determine
AVX512F ISA extension, EAX and ECX needs to be set to 7 and 0
respectively before invoking `cpuid` instruction. This commit also
removes inline assembly for __cpuid in favor of using compiler provided
intrinsic functions. Both GCC and clang provides __cpuid like function
via __cpuid_count intrinsic.

This commit also creates a portable wrapper over compiler intrinsic
functions, __cpuid and __cpuidex. `cpuid' provides base level ISA query
and `cpuidex` provides extra extension information like AVX512F. These
wrappers lean towards MSVC like API.

References:
CPUID Docs: https://en.wikipedia.org/wiki/CPUID

GCC's ``docs" on __cpuid_count:
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/config/i386/cpuid.h

Clang's docs on __cpuid_count:
https://clang.llvm.org/doxygen/cpuid_8h.html

MSVC's docs on __cpuid and __cpuidex:
https://learn.microsoft.com/en-us/cpp/intrinsics/cpuid-cpuidex
2023-02-08 23:20:20 +01:00
..
appleutility
ardour VST3: assume left-only is Mono (#9229) 2023-02-08 22:53:26 +01:00
ardouralsautil
audiographer Export CmdPipeWriter: add option to use tmpfile 2023-01-16 05:10:32 +01:00
auscan Change tools --help URLs to use https 2022-10-24 04:57:30 +02:00
backends ALSA: update endianess conversion functions 2022-12-27 13:32:31 +01:00
canvas Only use render-group when container is not opaque 2023-02-05 22:34:38 +01:00
clearlooks-newer
ctrl-interface ctrl surfaces: add method to BasicUI to stop slots in a given trigger box 2022-12-10 10:33:24 -07:00
evoral use C++11 auto iterator 2023-02-06 21:04:17 -07:00
fluidsynth Fix invalid use of Doxygen "@param" command 2022-10-30 20:44:28 -04:00
fst Consolidate search/file-system paths (fixes vst builds) 2022-11-19 00:48:11 +01:00
gtkmm2ext Add API to set openGL backing scale 2023-02-04 22:25:52 +01:00
hidapi
libltc
lua Potential fix for C++20 std::set::* ambiguity 2022-10-19 16:06:47 +02:00
midi++2
panners Indicate UTF8 literals - fixes glyph rendering with MSVC (1/2) 2023-01-16 21:41:09 +01:00
pbd Fix CPUID to detect AVX512F 2023-02-08 23:20:20 +01:00
plugins a-eq: ifdef methods only used for inline display 2022-12-16 23:05:36 +01:00
ptformat
qm-dsp Address some Wmissing-prototypes in qm-dsp 2022-11-26 16:23:52 +01:00
surfaces Indicate UTF8 literals - fixes glyph rendering with MSVC (1/2) 2023-01-16 21:41:09 +01:00
temporal Fix minor errors in temporal/wscript 2023-01-12 20:58:24 +01:00
vamp-plugins Fix EBU-R128 loudness analysis for mono signals 2023-02-02 17:58:46 +01:00
vamp-pyin Fix typos 2022-09-21 19:09:55 -06:00
vfork
vst3 Ignore Steinberg's non-virtual-d'tor 2023-02-08 02:03:54 +01:00
waveview Revert canvas debugging 2023-02-04 18:23:18 +01:00
widgets change base class for UIConfigurationBase, because it IS-A Configuration 2023-01-27 15:13:27 -07:00
zita-convolver
zita-resampler