小编Ali*_*i J的帖子

LLVM的整数类型

LLVM语言将整数类型指定为iN,其中N是整数的位宽,范围从1到2 ^ 23-1(根据:http://llvm.org/docs/LangRef.html#integer-型)

我有两个问题:

  1. 将C程序编译为LLVM IR级别时,可以将哪些类型降低到i1,i2,i3等?看起来类型i8,i16,i32,i64必须足够,所以我想知道所有其他近800万个整数类型是什么.

  2. 将有符号和无符号整数类型都降低到i32是真的吗?是什么原因,为什么它不适用于32位浮点数(在LLVM中表示为f32)?

types llvm llvm-codegen

17
推荐指数
1
解决办法
7275
查看次数

基于LLVM的编译器的前端

我正在尝试开发基于LLVM基础结构的编译器.我的语言有类似C语法,因此我想利用现有的C编译器.现在我专注于前端(词法分析,解析),但我很困惑哪个前端是最好的方法.Clang,llvm-gcc还是传统的flex/bison工具?

我对最简单的解决方案特别感兴趣,这个解决方案允许我为编译器的后续阶段生成LLVM IR代码.

compiler-construction parsing llvm clang llvm-gcc

5
推荐指数
1
解决办法
5396
查看次数