Bit Manipulation Instructions (BMI) sets are extensions to the x86instruction set architecture for microprocessors from Intel and AMD, The purpose of the instruction set is to improve the speed of bit manipulation. The instructions all operate on general purpose registers.
There are two sets published by Intel, BMI1 and BMI2 both introduced with Haswell architecture, and two by AMD, ABM (Advanced Bit Manipulation) which is also a subset of SSE4a, and implemented by Intel as part of SSE4.2 and BMI1, and TBM (Trailing Bit Manipulation) extension, not implemented by Intel yet.
ABM
ABM is only implemented as a single instruction set by AMD. Intel considers POPCNT part of SSE4.2 and LZCNT part of BMI1. Both instructions have separate CPUID flags.