Author: Aiden Grossman Date: 2023-05-18T05:37:48Z New Revision: 4acee5b5cfa462af66225acda7d3d9efe1036aa9
URL: https://github.com/llvm/llvm-project/commit/4acee5b5cfa462af66225acda7d3d9efe1036aa9 DIFF: https://github.com/llvm/llvm-project/commit/4acee5b5cfa462af66225acda7d3d9efe1036aa9.diff LOG: Revert "[clang][X86] Add __cpuidex function to cpuid.h" This reverts commit 286cefcf35d0f55c57184c4219b95e82c96f1420. Patch caused build failures for downstream projects on Windows due to the fact that __cpuidex was added as a built in on Windows in D121653. Reverting for now so that others aren't blocked and I can figure out a proper solution. Added: Modified: clang/lib/Headers/cpuid.h clang/test/Headers/cpuid.c Removed: ################################################################################ diff --git a/clang/lib/Headers/cpuid.h b/clang/lib/Headers/cpuid.h index 22260c48c0c42..1ad6853a97c9d 100644 --- a/clang/lib/Headers/cpuid.h +++ b/clang/lib/Headers/cpuid.h @@ -328,10 +328,4 @@ static __inline int __get_cpuid_count (unsigned int __leaf, return 1; } -static __inline void __cpuidex (int __cpu_info[4], int __leaf, int __subleaf) -{ - __cpuid_count(__leaf, __subleaf, __cpu_info[0], __cpu_info[1], __cpu_info[2], - __cpu_info[3]); -} - #endif /* __CPUID_H */ diff --git a/clang/test/Headers/cpuid.c b/clang/test/Headers/cpuid.c index 6ed12eca7a61d..7e485495c1066 100644 --- a/clang/test/Headers/cpuid.c +++ b/clang/test/Headers/cpuid.c @@ -6,19 +6,14 @@ // CHECK-64: {{.*}} call { i32, i32, i32, i32 } asm " xchgq %rbx,${1:q}\0A cpuid\0A xchgq %rbx,${1:q}", "={ax},=r,={cx},={dx},0,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}) // CHECK-64: {{.*}} call { i32, i32, i32, i32 } asm " xchgq %rbx,${1:q}\0A cpuid\0A xchgq %rbx,${1:q}", "={ax},=r,={cx},={dx},0,2,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}, i32 %{{[a-z0-9]+}}) -// CHECK-64: {{.*}} call { i32, i32, i32, i32 } asm " xchgq %rbx,${1:q}\0A cpuid\0A xchgq %rbx,${1:q}", "={ax},=r,={cx},={dx},0,2,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}, i32 %{{[a-z0-9]+}}) // CHECK-32: {{.*}} call { i32, i32, i32, i32 } asm "cpuid", "={ax},={bx},={cx},={dx},0,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}) // CHECK-32: {{.*}} call { i32, i32, i32, i32 } asm "cpuid", "={ax},={bx},={cx},={dx},0,2,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}, i32 %{{[a-z0-9]+}}) -// CHECK-32: {{.*}} call { i32, i32, i32, i32 } asm "cpuid", "={ax},={bx},={cx},={dx},0,2,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}, i32 %{{[a-z0-9]+}}) unsigned eax0, ebx0, ecx0, edx0; unsigned eax1, ebx1, ecx1, edx1; -int cpuid_info[4]; - void test_cpuid(unsigned level, unsigned count) { __cpuid(level, eax1, ebx1, ecx1, edx1); __cpuid_count(level, count, eax0, ebx0, ecx0, edx0); - __cpuidex(cpuid_info, level, count); } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits