Векторизация с помощью gcc5 не дает никакой информации

#c #g #vectorization #g -5

#c #g #векторизация #g -5

Вопрос:

Я пытался выполнить некоторую векторизацию после обновления g с версии 4.8.5 до 5.4.1. С помощью этих флагов:

 g   particles-v3.cpp -o v3 -O3 -msse4.2 -mfpmath=sse -ftree-vectorizer-verbose=5 -ffast-math -m32 -march=native -std=c  11
  

В то время как та же команда выдает более 4000 строк подробной информации о векторизации с g -4.8, с g -5.4 это ничего не говорит.

Есть ли какое-то серьезное изменение в g -5, которое делает -ftree-vectorizer-verbose=X непригодным для использования, или просто что-то не так в строке? Как изменить это, чтобы это работало?

РЕДАКТИРОВАТЬ: обнаружил, что использование -fopt-info-vec-all дает именно ту информацию, которую я хотел. Таким образом, вопрос решен.

Комментарии:

1. Попробуйте добавить -fopt-info-vec-missed флаг, чтобы увидеть информацию об упущенных возможностях векторизации.

2. Это дает 283 строки довольно непривычно короткой информации. Также ничего не говорится о возможностях, которые не были упущены, в то время как версии 4.8 явно удалось векторизовать по крайней мере 1 цикл.