llvm

    0热度

    1回答

    我变换以下LLVM-IR ; Function Attrs: noinline norecurse nounwind uwtable define i32 @main() #0{ entry: %sub = sub nsw i32 5, 3 %cmp = icmp slt i32 %sub, 3 br i1 %cmp, label %if.then, label %if.else i

    5热度

    1回答

    我在Windows上使用MinGW构建了Clang,并使用目标三重x86_64-w64-windows-gnu。可执行文件clang.exe和clang ++。exe可以按照预期工作,如果我在发布模式下编译它们(它们编译程序时不会出错),但是在调试模式下构建时,我无法运行它们并获得this error - “此应用程序无法运行PC”。来自同一版本的其他可执行文件(如clang-check.exe)

    2热度

    1回答

    这是我在lldb命令行模式下的第一次体验。不成功。 安装最小试剂盒与铛,LLD,LLDB V5(Ubuntu的16.04) 示例应用程序建立与铛。 试图启动: lldb applcation >run error: process launch failed: unable to locate lldb-server-5.0.0 所以现在的问题: 为什么LLDB尝试运行一台服务器?这不是远程调试。

    2热度

    1回答

    对于我自己的Pass的开发,我想编写单元测试 - 我有很多'纯粹'的帮助器方法,所以它们看起来是单元测试的理想候选者。但其中一些需要一个llvm :: LoopInfo实例作为参数。 在我的(功能 - )通我只是用 void getAnalysisUsage(llvm::AnalysisUsage &AU) const override { AU.setPreservesCFG();

    1热度

    1回答

    如何在LLVM传递中识别带注释的变量? #include <stdio.h> int main(){ int x __attribute__((annotate("my_var")))= 0; int a,b; x = x + 1; a = 5; b = 6; x = x + a; return x; } 例如,我想鉴定具有注释的变量(x在这种情况下)的指令并打印出来(X

    0热度

    1回答

    使用llvm::DominatorTree类,可以发现指令是否支配另一个指令。必要的功能,这样做是可用的:看 http://llvm.org/doxygen/classllvm_1_1DominatorTree.html DT = DominatorTree(Func); ... ... DT.dominates(I1,I2); 然而,同样的功能不适用于llvm::PostDominat

    0热度

    1回答

    因此,我试图按照LLVM compiler tutorial一起学习,并试图使用CMake而不是llvm-config构建玩具示例。由于an issue with Ubuntu's packaging system,我决定从源代码构建LLVM并链接到它。所以我按照指示here从源代码构建LLVM 3.7.1。我复制粘贴从LLVM的examples/Kaleidoscope目录中的第3章源代码(因为

    0热度

    1回答

    有没有办法使用LLVM IR API在C代码中获取由llvm::Function对象指向的函数的静态地址?

    0热度

    1回答

    我目前正在使用LLVM编写通行证,并且有几个关于变量/参数/参数名称的问题。 说我有这样的结构: struct Kid { char name[30]; int age; char hobby[30]; }; 我运行一个模块通,发现Kid的模块中的相应StructType。我想使用Kid的成员的名字,但我不知道如何访问它们。我尝试使用element_iterat

    0热度

    2回答

    我正在尝试构建铿锵声,但是构建大小相当大。由于clang支持非C族语言(例如Java,Fortran),有没有办法在构建期间关闭它。我只想要支持C和C++,而不关心其他语言。 是否有一个CMake选项需要设置来做到这一点? 非常感谢! 最好的问候, 尼蒂什