[llvm-branch-commits] [openmp] b75cbfe - Revert "[openmp] __kmp_x86_cpuid fix for i386/PIC builds. (#84626)"

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sat Mar 16 06:39:11 PDT 2024


Author: David CARLIER
Date: 2024-03-16T13:39:08Z
New Revision: b75cbfe45fbbdc3d42ca99fae265cf567f0c71cd

URL: https://github.com/llvm/llvm-project/commit/b75cbfe45fbbdc3d42ca99fae265cf567f0c71cd
DIFF: https://github.com/llvm/llvm-project/commit/b75cbfe45fbbdc3d42ca99fae265cf567f0c71cd.diff

LOG: Revert "[openmp] __kmp_x86_cpuid fix for i386/PIC builds. (#84626)"

This reverts commit facb89ae1228c067b2b14f32e7e70608fe50704b.

Added: 
    

Modified: 
    openmp/runtime/src/kmp.h

Removed: 
    


################################################################################
diff  --git a/openmp/runtime/src/kmp.h b/openmp/runtime/src/kmp.h
index 569a1ab9b477c4..885d6636abe4a8 100644
--- a/openmp/runtime/src/kmp.h
+++ b/openmp/runtime/src/kmp.h
@@ -1402,19 +1402,9 @@ extern void __kmp_query_cpuid(kmp_cpuinfo_t *p);
 // subleaf is only needed for cache and topology discovery and can be set to
 // zero in most cases
 static inline void __kmp_x86_cpuid(int leaf, int subleaf, struct kmp_cpuid *p) {
-#if KMP_ARCH_X86 && (defined(__pic__) || defined(__PIC__))
-  // on i386 arch, the ebx reg. is used by pic, thus we need to preserve from
-  // being trashed beforehand
-  __asm__ __volatile__("mov %%ebx, %%edi\n"
-                       "cpuid\n"
-                       "xchg %%edi, %%ebx\n"
-                       : "=a"(p->eax), "=b"(p->ebx), "=c"(p->ecx), "=d"(p->edx)
-                       : "a"(leaf), "c"(subleaf));
-#else
   __asm__ __volatile__("cpuid"
                        : "=a"(p->eax), "=b"(p->ebx), "=c"(p->ecx), "=d"(p->edx)
                        : "a"(leaf), "c"(subleaf));
-#endif
 }
 // Load p into FPU control word
 static inline void __kmp_load_x87_fpu_control_word(const kmp_int16 *p) {


        


More information about the llvm-branch-commits mailing list