Кресты / Говнокод #16124 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
Poor man' link time code generation:

#include "main.cpp"
#include "frame.cpp"
#include "func.cpp"
#include "account.cpp"
#include "advancer.cpp"
#include "audit.cpp"
#include "cpio.cpp"

g++ -whole-program -o my books.exe -O3 includeall.cpp

http://blogs.msdn.com/b/oldnewthing/archive/2014/06/06/10531604.aspx

Запостил: someone someone, (Updated )

Комментарии (5) RSS

  • а чё. главное что работает.

    я такое пару раз делал когда (1) make'а под рукой не было или (2) мэйкфайл был кривой. (виндозные проблемы.)

    для оптимизации имхо это кривовато. почти все компилеры уже могут и LTO и profile-based optimization. и gcc все равно нужно говорить что бы он больше инлайнил (-finline-limit), потому что по умолчанию он относительно консервативен.

    ЗЫ искал inline limit - случайно нашел -fmudflap . LOLное имя.
    Ответить
    • >и gcc все равно нужно говорить что бы он больше инлайнил (-finline-limit)
      Думаю gcc не зря консервативен в инлайне и анроллинге, fprofile - вот критерий истины.

      Это доказательство почему гентушники жгут даром электричество. Ибо давно подмечено, что свои билды даже заточенные под конкретную машину зачастую сливают профайленным. А профайлить и делать lto всему софту - идиотия и преждевременная оптимизация.

      Кстати а какие еще опции кроме стандартных -O3 -flto -march= ... -mtune=... кто юзает?
      Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8