Aviso do compilador (nível 1) C4556
o valor do argumento imediato intrínseco 'value' está fora do intervalo 'lowerbound - upperbound'
Comentários
Um intrínseco corresponde a uma instrução de hardware. A instrução de hardware tem um número fixo de bits para codificar a constante. Se value estiver fora do intervalo, ele não será codificado corretamente. O compilador trunca os bits extras.
Exemplo
O seguinte exemplo gera o erro C4556:
// C4556.cpp
// compile with: /W1
// processor: x86 IPF
#include <xmmintrin.h>
void test()
{
__m64 m;
_m_pextrw(m, 5); // C4556
}
int main()
{
}