запускаю файл и он выполняется в 4 раза быстрее, чем с обычной компиляцией без оптимизации. Вопрос - как мне посмотреть(извлечь в виде кода или хоть что-то читаемое получить) того, что оно оптимизировало. По факту хочу сравнить код с оптимизацией и мой исходный код, где я допустил просчеты, где можно было быстрее. Или есть оптимизации, которые происходят на более низком уровне, и не получится их компилировать без оптимизации?
>> где я допустил просчеты Мне кажется, словно вы неверно понимаете задачу оптимизирующих компиляторов
> где я допустил просчеты Функции заюзал наверное
Да, есть просчёт: написание на С++ в надежде увидеть ассемблерный выхлоп, полностью эквивалентный исходному коду
можно попросить gcc выдать промежуточный код и все оптимизации, который копилятор делал через -fdump-tree-all и -fdump-rtl-all https://gcc.gnu.org/onlinedocs/gcc/Developer-Options.html#Developer-Options
я понял, оно создало 200+ файлов на каждый лад свой, а как мне понять где произошли изменения связанные со скоростью, это видимо методом ты-ка. Спасибо. может есть способы более мягкие?
Обсуждают сегодня