ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 июля
1378446 Топик полностью
Tyмблep (03.12.2023 16:55, просмотров: 252) ответил Лaгyнoв на всем спасибо! Я ж говорю - никогда не постигну. Это было так - типа эмоции. На фоне 180кбайт туда сюда 60 байт - несерьезно. :-)
Однажды я видел такую оптимизацию IAR C: 

Компилятор обнаружил частый повтор последовательности

одних и тех же исполнимых кодов. Он самостоятельно оформил

их процедурой, и из всех мест где они были сделал CALL.

(Причём, это напрямую не связано с текстом на С - речь может

быть об одинаковых манипуляциях с регистрами, что в С

непосредственно не используется)

Получилась экономия размера за счёт скорости выполнения.

..допустим мы убрали часть таких отрезков. Вдруг компилер

решил (как то там по своим алгоритмам) что эту оптимизацию

он делать не будет. И все эти отрезки вернулись на свои места.

Тогда размер может и увеличиться, поскольку часть оптимизации

по размеру отменена.

---

Существуют и более простые объяснения.

Выполняя массовые редакции по удалению

случайно было сделано ешё что-то. И забыто.

..раскомментирован кусок кода ... Изменён

ключ оптимизации.. Произведено обновление

софта компилитора... итд итп