+ 1. **Check the feature availability**. AMX_TILE is enumerated in CPUID
+ leaf 7, sub-leaf 0, bit 24 of EDX. If available, ``/proc/cpuinfo``
+ shows ``amx_tile`` in the flag entry of the CPUs. Given that, the
+ kernel may have set XSTATE component 18 in the XCR0 register. But a
+ user needs to ensure the kernel support via the ARCH_GET_XCOMP_SUPP
+ option::
Why did you bother mentioning the XCR0 and CPUID specifics? We don't
want applications doing that, right?
+ #include <asm/prctl.h>
+ #include <sys/syscall.h>
+ #include <stdio.h>
+ #include <unistd.h>
^ Just from the appearance here there looks to be some spaces vs. tabs
inconsistency.
+ 2. **Request permission**. Now it is found that the kernel supports the
+ feature. But the permission is not automatically given. A user needs
+ to explicitly request it via the ARCH_REQ_XCOMP_PERM option::
That phrasing is a bit awkward. How about:
After determining support for AMX, an application must
explicitly ask permission to use it:
...