说是LLVM4.0和3.5的对比,其实是Clang的4和3.5的对比。在调试Clang编译源码的过程中,发现-S选项在4.0和3.5中的处理不一样,后来使用命令验证了这个事情

jourluohua@jour:~/work/cpp$ clang++ -ccc-print-phases 31.cpp

0: input, "31.cpp", c++

1: preprocessor, {0}, c++-cpp-output

2: compiler, {1}, ir

3: backend, {2}, assembler

4: assembler, {3}, object

5: linker, {4}, image

 LLVM4.0与3.5编译phase对比

LLVM4.0与3.5编译phase对比

在处理-S选项的时候,4.0是将其专门作为一个backend步骤来处理,而3.5则直接合并到了compiler中,这个特别需要注意,具体的影响,还没来得及评估,待补充。

 

相关文章:

  • 2022-12-23
  • 2021-08-21
  • 2022-12-23
  • 2021-10-02
  • 2021-07-03
  • 2021-11-28
  • 2021-10-15
  • 2021-11-28
猜你喜欢
  • 2021-12-15
  • 2021-10-06
  • 2021-05-20
  • 2021-07-19
  • 2022-12-23
  • 2021-11-07
  • 2021-06-14
相关资源
相似解决方案