llvm-ir

    5热度

    3回答

    我一直在寻找小时,我找不到任何可以帮助我的东西。我正在开发一个涉及FunctionPass的项目。我已经实现了runOnFunction(函数& f)方法,这工作正常。基本上它需要: 1)检测存储指令 2)转换存储指令的存储器地址为Integer 3)使用按位与运算(0000FFFF改变整数) 4)转换整数回指针 到目前为止,我有以下几点: virtual bool runOnFunction(F

    9热度

    1回答

    我正在尝试使LLVM内联函数库。 我有LLVM位码文件(手动生成),我与llvm-link连接在一起,我也有一个库(用C语言编写)编入位码clang和归档llvm-ar。我设法将所有内容链接在一起并执行,但我无法设法让LLVM内嵌函数库。有关如何完成这件事的任何线索?

    22热度

    3回答

    我在llvm.org上用在线编译器生成了一个bc文件,我想知道是否有可能从ac或C++程序加载这个bc文件,执行IR bc文​​件与llvm jit(以编程方式在c程序中),并获得结果。 我该如何做到这一点?

    6热度

    1回答

    我是LLVM的新手。我试图写一个基本的通行证,当它被给予中间代表时,它将检查printf调用的参数。 如果格式字符串不是字符串文字,那么当然我不能检查它。但很多时候是这样。 我试图要检查的样品IR是: @.str = private unnamed_addr constant [7 x i8] c"Hi %u\0A\00", align 1 define i32 @main() nounwin

    2热度

    1回答

    我有在C代码以下循环: int f[10],b[10],k=0; for(int i = 0; i < 10; i++) { k = b[i+3]*f[i+2]; //please ignore the out of bound problem } 我想确定数组b具有3步幅和f已在上面的代码递增的2因素。 生成LLVM组件(对于含循环块): ;<label>:12 %13 =

    1热度

    1回答

    我试图修改LLVM,以便它在内存中保持某些常量和函数连续。 换句话说,我需要确保某些函数的机器代码是总是,前面加上一些~4字节的常量。 函数体本身不能被修改。 我可以简单地通过修改LLVM IR来实现吗? 如果是: 我怎么会在LLVM IR状态保持变量和函数连续的内存? 如果不是: 代码生成过程的哪个部分(即哪个过程)应该修改以实现此目的?任何链接到我应该看的项目/文件都会有所帮助,因为我不确定从