Включает ли gcc 4.8.1 sse по умолчанию?

У меня возникли сбои при работе с старым кодом моего кода в системе, которая не поддерживает SSE4.1, я отлаживал бит и нашел инструкции SSE в glibc, возможно ли это? Почему это не сообщается в примечаниях к выпуску gcc 4.8.1?

Ответ 1

Вы можете видеть, какие оптимизации используются GCC с помощью следующей команды:

$ gcc -Q --help=target

Например, на моей машине GCC не включает sse4.1 по умолчанию:

$ gcc -Q --help=target | grep msse4.1
  -msse4.1                              [disabled]

Однако он поддерживается, потому что он отображается в /proc/cpuinfo. И действительно, если я попрошу GCC оптимизировать сгенерированный код для моей машины, он позволяет sse4.1:

$ gcc -Q --help=target -march=native | grep msse4.1
  -msse4.1                              [enabled]