Как сказать gcc показать мне список используемых вами флагов оптимизации - PullRequest
0 голосов
/ 23 сентября 2018

Я прочитал gcc документацию для вариантов оптимизации.У них нет примеров.

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

Я написалследующий тривиальный код:

#include <cmath>

double calculate(double x)
{
    int y=x+sin(x);
    return exp(x)+exp(-x);
}

int main(int argc,char *argv[])
{
    return ceil(calculate(argc));
}

, и я скомпилировал его с

g++ -Q -v -O3 main.cpp

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

Как я могу получить список флагов оптимизации, используемых для компиляции функции calculate?

1 Ответ

0 голосов
/ 27 сентября 2018

Современные версии GCC имеют параметр -fverbose-asm, который выводит параметры оптимизации, включенные в комментарии в файле сборки, который можно получить, компилируя с -S или -save-temps

...