一种基于LLVM的ST语言编译方法及编译系统和编译器

    公开(公告)号:CN110825384A

    公开(公告)日:2020-02-21

    申请号:CN201911029015.X

    申请日:2019-10-28

    Abstract: 本发明公开了一种基于LLVM的ST语言编译方法及编译系统和编译器,方法包括:获取结构化文本ST语言的源代码;对结构化文本ST语言的源代码按照IEC61131-3定义的词法规则进行词法分析,得到符号流;对符号流根据IEC61131-3定义的语法表达式,进行语法分析,得到一个表征ST语言的源代码对应的程序结构的抽象语法树,抽象语法树以表达式为节点;对抽象语法树进行语义分析,得到带类型标识的抽象语法树;对带类型标识的抽象语法树进行转换,生成LLVM IR。将ST语言代码转换成LLVM IR,LLVM IR独立于ST语言和目标平台,可以利用LLVM优化器进行优化,最后通过LLVM后端生成针对目标平台的机器代码。

Patent Agency Ranking