LLVM Fortran 升级:告别 flang-new,欢迎 flang!
💡
原文英文,约3200词,阅读约需12分钟。
📝
内容提要
自2020年起,LLVM包含Fortran编译器Flang,经过多次重写和改进,Flang在LLVM 20中正式更名为flang,标志着重要里程碑。Flang开发近十年,旨在提升Fortran编程体验,支持科学计算等领域。
🎯
关键要点
- 自2020年起,LLVM包含Fortran编译器Flang,Flang在LLVM 20中正式更名为flang,标志着重要里程碑。
- Flang开发近十年,旨在提升Fortran编程体验,支持科学计算等领域。
- Fortran于1950年代首次创建,专注于数学应用,解放程序员免于编写特定机器的汇编代码。
- 近年来Fortran复兴,获得了包管理器和非官方标准库,LFortran编译器支持交互式编程。
- Flang的早期合作伙伴是美国国家实验室和NVIDIA,旨在保留Fortran代码的实用性。
- Flang和GFortran的多种实现可以降低单一项目的失败风险,促进语言特性的验证和反馈。
- Flang的故事始于2015年,最初由PGI与美国国家实验室合作,PGI后来成为NVIDIA的一部分。
- Flang的开发经历了多个重写,最终与LLVM项目结合,形成了现在的LLVM Flang。
- Flang采用了MLIR(多级中间表示)来解决将高级语言特性映射到LLVM IR的困难。
- Flang引入了HLFIR(高级Fortran中间表示)以优化Fortran数组操作。
- Flang支持OpenMP,通过指令标记代码的并行性,编译器将其转换为OpenMP运行时库的调用。
- Flang与Clang共享OpenMP支持代码,减少了重复工作。
- Flang成为第一个使用Clang编译器驱动库的项目,能够处理多种目标和工具。
- Flang的开发历程中,已有近10,000次提交,来自约400名不同的贡献者。
➡️