2011-05-16 3 views
1

Мои вопросы следующие:GCC: Вопросы, касающиеся GCC «оптимизации» и «инлайн» определение

1) Если я скажу GCC не оптимизировать код существующего в определенный исходный файл, то это будет применяется ко всем функциям, вызываемым из этого файла (которые могут находиться в разных исходных файлах) или только к функциям/коду, которые существуют локально в этом файле? То есть, будет ли оптимизация файла рекурсивным поведением или нет?

2) Если я объявляю функцию как встроенную (так что я не получаю служебные служебные функции), и эта функция объявляется в файл, в котором я принудительно GCC не применяю никакой оптимизации, тогда, если я вызову функцию из еще Исходный файл, не могу ли я получить эффект оптимизации?

Любая помощь будет очень признательна.

ответ

0

К вопросу № 2:

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

0

Оптимизация не является рекурсивной - если вы не оптимизируете файл, то это только функции в этом файле, которые не будут оптимизированы. Что касается встроенного, функция может быть встроена в файл, в который он скомпилирован, как правило, с помощью механизма #include, если это то, о чем вы просите (что далеко не ясно).

Смежные вопросы