Color conversion assigned 'a' twice.
Console listener use local variable with the same name a class member.
Some additionals to nocopy for FileUtils and mutex
Common/CPUDetect.cpp:70:2: error: use of undeclared identifier '__cpuidex'; did you mean 'do_cpuidex'?
__cpuidex((int *)regs, cpuid_leaf, ecxval);
^~~~~~~~~
do_cpuidex
Common/CPUDetect.cpp:69:6: note: 'do_cpuidex' declared here
void do_cpuidex(u32 regs[4], u32 cpuid_leaf, u32 ecxval) {
^
Common/CPUDetect.cpp:70:12: error: cannot initialize a parameter of type 'u32 *' (aka 'unsigned int *') with an rvalue of type 'int *'
__cpuidex((int *)regs, cpuid_leaf, ecxval);
^~~~~~~~~~~
Common/CPUDetect.cpp:69:21: note: passing argument to parameter 'regs' here
void do_cpuidex(u32 regs[4], u32 cpuid_leaf, u32 ecxval) {
^
Common/CPUDetect.cpp:73:2: error: use of undeclared identifier '__cpuid'; did you mean 'do_cpuid'?
__cpuid((int *)regs, cpuid_leaf);
^~~~~~~
do_cpuid
Common/CPUDetect.cpp:72:6: note: 'do_cpuid' declared here
void do_cpuid(u32 regs[4], u32 cpuid_leaf) {
^
Common/CPUDetect.cpp:73:10: error: cannot initialize a parameter of type 'u32 *' (aka 'unsigned int *') with an rvalue of type 'int *'
__cpuid((int *)regs, cpuid_leaf);
^~~~~~~~~~~
Common/CPUDetect.cpp:72:19: note: passing argument to parameter 'regs' here
void do_cpuid(u32 regs[4], u32 cpuid_leaf) {
^
4 errors generated.
Don't really know what's going on here, but this seems like the easiest way out. Appears that CPUID really is buggy on this hardware, which seems weird. Alternate explanations would be that we are checking the wrong bits for xgetbv support or something...
This one can generate slightly smaller code by exploiting some EAX-only
encoding and various other short forms, and adds support for many newer
CPU instructions.
Add missing #include to various files.
strings.h isn't provided by MSVC so we don't include it there; it's needed
for other OSes/compilers.
Get rid of pre-ISO-C malloc.h includes; malloc is provided by stdlib.h.
Fixes some linuxisms.
Prepend __builtin_ to __clear_cache, calling it without the prefix is a
GNU extension.