LINUX.ORG.RU

kernel comiling


0

0

Pri kompiljacii kernela ispol'zyetsja -O2 opcija, odnako y gcc est' takzhe -O3 kotoraja delaet bolee effektivnyu optimizaciu koda. No na praktike ochen' redko, kogda kto-to ispol'zyet -O3 opciu, otchasti eto vidimo svjazano s tem, chto eto ne pozvoljaet provodit' dal'nejshij debugging. Odnako debagirovat' kernel vrjadli komy-to osobo nado. Poetomy vopros: naskol'ko bezopasno zamenit' -O2 na -O3 pri kompiljacii kernela?

anonymous

Каким компилятором? Для gcc 2.7.2.3 -O3 обозначает только включение опции 'inline-functions', что при компиляции ядра по барабану... (Из info gcc.)

anonymous
()

Дебагинг лучше вообще без оптимизации делать. А -O3 при компиляции классов с методами написанными на inline-asm'e делает все методы инлайновыми, и если в методе используются метки, то файл не скомпилируется, т.к. asm не понимает локальные метки. Что-то вроде этого я думаю будет и с ядром - там очень много на asm-e написано.

anonymous
()

I komy iz vas verit'? Kernel vrode na chistom C pisalsja, a classov tam net, eto ne C++. Ja pravel'no rassyzhdau? BTW y menja gcc 2.7.2.3.

anonymous
()

У меня xfstt не работает с -O6 без -fnoinline, а ядро лучше компилить с -mpentium (хотя сам не пробовал)

saper ★★★★★
()

Что значит верить. Оба ответивших написали, что -О3 затрагивает только С++. Ядру до этого как до Смолтока - по барабану.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.