Skip to content

Repository files navigation

Opsend Compiler

2024年全国大学生计算机系统能力大赛编译系统设计赛(华为毕昇杯)ARM赛道作品

Architecture

architecture

Passes

  • 中端
    • 全局值编号 (GVN)
    • 全局代码移动 (GCM)
    • 过程内死代码删除
    • 过程间死代码删除
    • 函数内联
    • LCSSA
    • 删除无用循环
    • 循环展开
    • 局部数组提升&标记常量数组
    • 全局变量局部化
    • 稀疏条件常量传播 (SCCP)
    • 尾递归优化
    • 并行优化
  • 后端
    • 图着色寄存器分配
    • 常数除法与常数取模
    • 窥孔优化
    • 块内指令条件化

Performance

  • gcc_o1/2:
$ gcc -march=armv7-a+neon-vfpv4 -mcpu=cortex-a7 -mfpu=neon -std=c11 -O1/2
  • clang_o2:
$ clang -march=armv7-a+neon-vfpv4 -mcpu=cortex-a7 -mfpu=neon -std=c11 -O2

performance

About

Opsend Compiler for CSDCC 2024

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages