assemblycpucpu-architecturecpuidbmi

Do Intel CPUs support Trailing Bit Manipulation (TBM) instructions?


Do Intel CPUs support TBM (Trailing Bit Manipulation) instructions?

I am trying to use bextr on Intel with an immediate argument and getting a SIGILL when the CPUID bit for tbm is set.

Does this mean that Intel CPUs do not support TBM?

What is the proper way to check for TBM support? Should only check this bit if the vendor id is AuthenticAMD ?


Solution

  • The intel instruction set reference, october 2017 version, certainly doesn't seem to list a version with an immediate operand. Similarly, no mention of a tbm flag in cpuid. It is bit #21 in the AMD specification which intel lists as reserved. It looks like indeed you will have to check the vendor id.

    Out of curiosity, what intel cpu did you try this on that returns a 1 for the reserved tbm bit in cpuid?