问题标签 [llvm-c++-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - LLVM 基本程序:链接器错误
我刚刚开始使用llvm。
这是我正在尝试编译的代码:
当我编译时:
我得到了 a.out 文件。不用担心。
但是,我有兴趣获取 LLVM IR 文件。所以,我用
我收到一条错误消息
命令 :
给我留下了几个警告,当我使用 lli 执行生成的 .s 文件时,我得到与以前相同的错误。
非常感谢你的帮助
c++ - LLVM C++ 程序编译
嗨,我用 LLVM Api 编写了一个简单的 C++ 代码
我如何编译它以获取 LLVM IR 文件?
谢谢你的帮助
c++ - LLVM StoreInst 和 AllocaInst
我正在尝试编写一个简单的解释器。
我正在尝试为分配操作生成 LLVM IR。生成部分的代码如下所示
SymTab 定义如下:
当我尝试执行输出文件时,出现以下错误:
你能帮我解决吗?
谢谢
clang - 在哪里可以找到完整的 LangOptions 方法列表
我需要clang::CompilerInstance
用一个类配置一个类的调用,clang::LangOptions
但我无法找到该类方法的详尽列表。
在这个链接中(使用 llvm 和 clang 解析 C++ 失败)我为 c++ 找到了一些类似的东西:
在这里(http://www.ibm.com/developerworks/linux/library/os-createcompilerllvm2/index.html?ca=drs-#list15)他们说要使用:
我在官方文档(http://clang.llvm.org/doxygen/classclang_1_1LangOptions.html)中进行了搜索,但没有找到与此相关的任何内容。
c++11 - LLVM IR Lambda 函数
我使用 clang++ 3.4 将 C++11 程序 (test.cpp) 编译成 LLVM IR 文件 (test.ll)。该程序包含几个 C++ lambda 函数,我想知道是否可以使用如下技术仅提取 lambda 函数的 IR:
llvm - 如何使用 LLVM API 查找函数中使用了哪些全局变量?
我想收集 LLVm IR 代码函数中使用的所有全局变量。是否有任何 LLVM API 可以做到这一点?例如,`如以下代码。
全局变量 a 和 b 在 fun() 中使用,我需要将 a 和 b 收集到一个集合中。
clang - 在 clang 命令行上提供 LLVM ModulePass
我有一个与 opt 工具配合使用的 ModulePass,但我无法弄清楚如何让它在命令行中可用。我目前使用通行证的工作流程是:
- clang -c -emit-llvm [c-源代码文件]
- llvm-link [llvm 位码文件]
- opt -load [PassName].so -[pass-name] [链接的 llvm 文件]
- llc [生成的位码文件]
- gcc [生成的汇编文件] -o [目标]
我想让我的 pass 与 clang 命令行集成,这样它就可以作为现有软件(例如 c++ 标准库)构建的一部分被调用,而不必为我编译的每个东西重新构建整个构建系统。我已经看到有关如何执行此操作的提示,但我无法将这些部分组合成一个工作设置。
使用 Clang 自动运行 LLVM Pass准确描述了我想要的,但该方法在 LLVM 3.4 中似乎已被弃用(PassManagerBuilder 已移至旧命名空间)。
LLVM - 使用 clang 自动运行 Own Pass似乎解决了基本问题,但我希望我可以做到这一点而不必修改 clang(这似乎是那里的建议)。
使用 LLVM 3.4 从 clang 获取新通行证的最佳方法是什么?
c++ - How to declare a global integer instance in LLVM IR?
I was wondering if anyone knew how to declare a global integer instance in LLVM IR. So far, I've been doing the following:
When I try to run, I get the following error:
compilation - 如何编译包含 LLVM API 标头的 C++ 程序?
我正在尝试使用 C++ 编译器来编译以下程序:
我正在尝试使用以下命令编译程序:
但是,当我编译时,我收到以下编译错误:
在这种情况下,我不确定在使用 Clang 编译 main.cpp 时如何链接 LLVM API 标头。
任何帮助将不胜感激。
llvm - 在函数传递中访问 loopinfo 的 LLVM 错误
我试图通过编写函数传递从 IR 获取循环信息。所以我按照一些例子写了如下。我对编写通行证和通行证管理器不是很熟悉。
当我运行这个程序时,它只是向我展示了segmentation error(core dumped)
,
但是当我注释掉addRequired我得到的错误消息是
我已经标记了 3 个地方,我不确定哪个是正确的或不正确的。任何人都可以帮助我吗?