[PATCH] D128461: [X86] Simplify __cpuid_count

Fangrui Song via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 23 14:04:52 PDT 2022


MaskRay added a comment.

Ah, OK. I am investigating a miscompile that `: "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx) \` may assign `"=r"` to use RDX. The output then looks like

  xchgq %rbx, %rdx
  cpuid
  xchgq %rbx, %rdx

and rbx is clobbered, since cpuid writes rax/rbx/rcx/rdx.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128461/new/

https://reviews.llvm.org/D128461



More information about the cfe-commits mailing list