编译器设计: 我们为什么需要 Tokennizer (分词器) ?

2024-03-24
阅读 1 分钟
507
我正在设计和编写一门编程语言 Styio. 在项目之初, 我就有所疑惑: 一个解析器 (Parser) 一般由 Lexer 和 Tokenizer 两部分组成, 其中 Lexer 的存在毋庸置疑, 总要先解析字符串才能从中提取语义信息, 这很好理解; 不过, Tokenizer 的存在价值却并不高, 因为 Lexer 可以直接从字符串生成 AST (抽象语法树, Abstract Syntax...

C++ 打印生成的 LLVM IR 以及 写入文件

2024-02-26
阅读 1 分钟
903
如果你的目标是运行 LLVM IR, 则不建议写入文件, 因为 LLVM 提供了 JIT 的方式直接从 C++ 运行. 后续会有相关文章链接放在此处.

CMake + LLVM JIT: [build] /usr/bin/ld: undefined reference to

2024-02-26
阅读 2 分钟
631
If you don't know what component is required, then check this: {代码...}

LLVM + Debian / Ubuntu 下载安装

2024-02-23
阅读 2 分钟
1.5k
LLVM Download Page (官方网站): [链接]LLVM GitHub Release (GitHub 发行版): [链接]LLVM For Debian (Debian 下载链接): [链接]