[clang] [CIR][X86] Add support for `cpuid`/`cpuidex` (PR #173197)
Sirui Mu via cfe-commits
cfe-commits at lists.llvm.org
Wed Dec 24 04:50:08 PST 2025
================
@@ -5819,4 +5762,31 @@ def CIR_BlockAddressOp : CIR_Op<"block_address", [Pure]> {
}];
}
+//===----------------------------------------------------------------------===//
+// CpuIdOp
+//===----------------------------------------------------------------------===//
+
+def CIR_CpuIdOp : CIR_Op<"cpuid"> {
+ let summary = "Get information about the CPU";
+ let description = [{
+ The `cir.cpuid` operation takes a base pointer to an array of 4 integers, a
+ function ID and a sub-function ID. The array of 4 integers is filled with
+ different information about the processor.
+
+ Example:
+
+ ```mlir
+ cir.cpuid %basePtr, %funcId, %subFuncId
----------------
Lancern wrote:
Could you add description about what each input value means?
https://github.com/llvm/llvm-project/pull/173197
More information about the cfe-commits
mailing list