我想将clang优化应用于源文件,然后生成其AST。
我尝试传递-O3
标志,但它似乎被忽略了。
例如,我假设为此剪辑了程序:
#include <stdio.h>
int main(void) {
int a = 5 + 5;
for (int i = 0; i < 10; i++) { }
printf("%i\n", a);
return 0;
}
可以应用许多优化,例如删除for循环将5 + 5转换为10。
当我使用clang -O3 -Xclang -ast-dump -fsyntax-only a.c
转储AST时,我得到了没有优化标志的相同AST。
我的目标是创建一个通过标志优化的TranslationUnit。