LLVM 有后端优化器吗?
Is there a backend optimizer in LLVM?
我可以通过命令获取优化级别llc -help
-O=<char> - Optimization level. [-O0, -O1, -O2, or -O3] (default = '-O2')
我想知道优化到底做了什么。
所以,我正在搜索后端优化器的源代码。
我google它通过“llvm后端优化器”,但没有关于它的信息,只有一些与目标无关的传递源代码。
我想知道优化对 div-rem-pars
做了什么。
可以将llvm IR的两条指令合并为一条汇编代码指令。
显然 llvm 中有后端优化器选项。然而,它们没有很好的记录 [1,2]。 TargetMachine
[3] class 有函数 getOptLevel
和 setOptLevel
为特定目标机器设置从 0-3 的优化级别,所以从那里开始你可以尝试跟踪它的使用位置。
[1] https://llvm.org/docs/CodeGenerator.html#ssa-based-machine-code-optimizations
[2] https://llvm.org/docs/CodeGenerator.html#late-machine-code-optimizations
[3] https://llvm.org/doxygen/classllvm_1_1TargetMachine.html
我可以通过命令获取优化级别llc -help
-O=<char> - Optimization level. [-O0, -O1, -O2, or -O3] (default = '-O2')
我想知道优化到底做了什么。
所以,我正在搜索后端优化器的源代码。
我google它通过“llvm后端优化器”,但没有关于它的信息,只有一些与目标无关的传递源代码。
我想知道优化对 div-rem-pars
做了什么。
可以将llvm IR的两条指令合并为一条汇编代码指令。
显然 llvm 中有后端优化器选项。然而,它们没有很好的记录 [1,2]。 TargetMachine
[3] class 有函数 getOptLevel
和 setOptLevel
为特定目标机器设置从 0-3 的优化级别,所以从那里开始你可以尝试跟踪它的使用位置。
[1] https://llvm.org/docs/CodeGenerator.html#ssa-based-machine-code-optimizations
[2] https://llvm.org/docs/CodeGenerator.html#late-machine-code-optimizations
[3] https://llvm.org/doxygen/classllvm_1_1TargetMachine.html