Como converter com eficiência um bitmap de 8 bits em uma matriz de números inteiros 0/1 com x86 SIMD

Eu quero converter inteiro de 8 bits em uma matriz de tamanho 8 com cada valor contendo o valor de bit de um inteiro.

Por exemplo: eu tenhoint8_t x = 8; Eu quero converter isso paraint8_t array_x = {0,0,0,0,1,0,0,0};

Isso deve ser feito com eficiência, pois esse cálculo faz parte do bloco de processamento de sinal. Existe uma maneira eficiente de fazer isso? Eu verifiquei a mistura da instrução. Não atendia às minhas necessidades ao ter elementos de matriz de tamanho 8 bits. plataforma de desenvolvimento é AMD Ryzen.