https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100758
--- Comment #11 from ValdikSS <iam at valdikss dot org.ru> --- Well, the function is called __builtin_cpu_supports, for which one might expect that it just checks CPUID and returns reliable results, while in reality it operates using the build-in CPU support list. The function does not return an error if it's unable to detect the feature, resulting in incorrect results, which makes the function unreliable. The fact that it may not always detect features which are present in the CPU is not documented, which brings the confusion among developers such as this bug. VIA processors have progressed into Zhaoxin CPU family which is fairly recent (2014-2019, with plans to release new processors soon). They both share almost the same CPUID data, that's why adding support for either of these CPU automatically implements the other one.