腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(797)
视频
沙龙
1
回答
如
何在
LLVM
中
嵌套
基本块
时
生成
LLVM
IR
这里有一个函数基础块A,在块A内部的另一个块,如何
生成
LLVM
IR
.For示例:{/*block A*/ {/*block B*/ int i=
浏览 23
提问于2018-09-07
得票数 0
1
回答
将armv7m指令转换为
LLVM
IR
、
、
、
、
我的体系结构只为汇编代码
中
的每个函数创建一个
llvm
函数,为函数
中
的每个
基本块
创建一个
llvm
基本块
,对于
基本块
中
的每个程序集指令,我使用一个构建器为该指令构建等效的
llvm
指令(同时将该指令的
基本块
的
llvm
基本块
传递给IRBuilder)添加程序集指令的..a代码示例。但是,在
生成
的
IR
中
的许多情况下,我会将其他索引添加到寄
浏览 4
提问于2021-05-16
得票数 0
1
回答
与人工构建
IR
代码相比,
LLVM
Builder有什么优势?
、
、
我对
LLVM
很陌生,并且尝试学习基本知识,这本身就相当困难。%1 = add i32 42, %0 这很明显。据我理解,
IR
语言和底层的SSA系统应该像上面那样使用伪寄存器,而不是使用我的代码显式分配的内存地址。因此,经过相当多的实验后,我
浏览 3
提问于2015-03-23
得票数 2
回答已采纳
1
回答
基于机器代码的
LLVM
控制流图
、
、
、
、
LLVM
一般给出其中间表示语言(
IR
)的控制流图(CFGs)。您也可以获得高级别的源代码为基础的CFGs与。我想让CFG达到机器代码的水平。有办法弄到这个吗? 我做了一些调查。在
LLVM
的后端代码
生成
阶段,有一个叫做的阶段。这个舞台上没有多少信息。然而,我猜
LLVM
在某个中间阶段会
生成
一个基于SSA的机器代码.如果存在这样的阶段,那么我们可以在该阶段基于代码
生成
基本块
。我必须在
LLVM
源文件树(可能在lib\CodeGen
中<
浏览 3
提问于2018-02-06
得票数 2
回答已采纳
1
回答
当我尝试发出目标代码
时
,为什么
LLVM
会出现segfaulting?
、
、
、
我正在尝试遵循
LLVM
的编译器实现教程,但是当我尝试发出目标代码
时
,我的代码出现了片断。#include <
llvm
/ADT/Optional.h>#include <
llvm
/
IR
浏览 27
提问于2017-03-15
得票数 4
回答已采纳
1
回答
在汇编代码
中
,
LLVM
IR
中
的
基本块
似乎被破坏了
、
我通过
llvm
pass将调试信息添加到
基本块
的第一条和最后一条指令
中
,然后成功地在程序集代码中找到添加的信息。但是,第一指令和最后指令的信息量是不同的。我想知道结果是否正确,如果是正确的,为什么数字是不同的,以及如何正确地在装配代码
中
得到块的边界?.loc 1 23333 1 is_stmt 1 # myls.c:23333:1我发现2333和23333不匹配,并且在不同的体系结构的装配代码
中
,
浏览 6
提问于2019-10-24
得票数 0
3
回答
用
LLVM
重新编译x86代码到一些更快的x86
、
、
是否可以通过输入x86 32位代码来运行
LLVM
编译器?有一个巨大的算法,我没有源代码,我想让它在相同的硬件上运行更快。我可以通过优化将它从x86转换回x86。另外,我可以对它做一个运行时概要文件,并提供给
LLVM
提示,哪些分支更有可能出现。 最初的代码是为x86 + x87编写的,不使用SSE/MMX/SSE 2。
浏览 1
提问于2011-01-08
得票数 18
回答已采纳
1
回答
创建外部函数的callinst
、
、
这是被调用函数的签名:该函数的原型位于include/
llvm
中
的foofile.h文件
中
,函数定义在MCJIT如
何在
给定的
IR
中
插入foo函数的callinst?2个值指针,bb是插入调用的
基本块
。当我在给定的
IR
上使用op运行pass
时
,它会正确地
生成
一个声明和一个调用,如下所示:d
浏览 6
提问于2015-08-22
得票数 1
1
回答
LLVM
IR
跳转到另一个函数
中
的
基本块
、
我已经用我的pass
生成
了一个
IR
,在这个
IR
中
的一个函数
中
,我想跳回调用函数的一个
基本块
,调用函数内部的ext_callee函数被调用如下: %4 = call i1 @ext_callee(i32最后两个参数是我想跳转到这个ext_callee函数
中
的
基本块
地址。我尝试用一个块地址参数来使用间接式指令,但是当我运行
IR
时
,它会提示段错误。我搜索了
LLVM
文档,但没有找到如何跳转到另一个函数的<e
浏览 2
提问于2017-05-30
得票数 1
1
回答
如
何在
c++ Xcode项目中使用
LLVM
库?
、
、
、
、
我正在松散地遵循,我现在需要实际使用
LLVM
库来
生成
代码。我使用brew install
llvm
安装了
LLVM
13,但我不知道如
何在
Xcode
中
的c++项目中使用它。/
IR
/BasicBlock.h"#include "
llvm
/
IR
/
浏览 22
提问于2022-04-08
得票数 0
1
回答
设置BasicBlock的后续项
时
在ModulePass中出错
、
在
LLVM
中
的以下代码
中
BasicBlock* Bb = &*i; forsetSuccessor(ii,(*rit));当代码在模块传递
中
实现时,它
浏览 1
提问于2013-07-15
得票数 0
1
回答
如何将'
llvm
::BasicBlock‘转换为'pred_iterator'?
、
我试图从一个
IR
文件
中
获取所有的前一个
基本块
,而不是在一次传递过程
中
。BasicBlock: " << bb.getName().str() << std::endl;} 但是,当我从for (BasicBlock *Pred : pred_iterator(bb)) {}添加
时
,/
IR
/CFG.h:48:19: note: candidate constructor not viable: no known convers
浏览 4
提问于2017-04-08
得票数 1
回答已采纳
1
回答
在基于
LLVM
的编译器
中
如何处理符号表?
我通读了本教程,使用
LLVM
编写了一个玩具编译器,但是关于符号表处理的内容并不多。有一个命令
llvm
-nm显示符号表,该符号表接受位码文件作为输入。它只返回函数名。
LLVM
编译器如何处理没有符号表的局部变量和循环变量?如果不是,如何处理符号表
浏览 0
提问于2012-10-26
得票数 5
回答已采纳
2
回答
从函数
中
获取文件名和位置
、
、
、
、
我有一个在
LLVM
IR
代码上迭代的
LLVM
传递,我想为原始代码的函数和
基本块
获得一个目录和一个文件名。我知道,当我有一个指令指针
时
,我可以很容易地使用下面的代码获得信息:感谢@hailinzeng () const
llvm
::DebugLoc &location = i_iter->getDebugLoc我看到了使用元数据的另一篇文章,但我不知道如何从元数据
中
获得DILocation或DIScope。/
IR
/Met
浏览 17
提问于2017-04-27
得票数 1
回答已采纳
5
回答
llvm
:如何获取
基本块
的标签
、
我已经写了一个pass来检测和打印函数
中
基本块
的标签,因为我想进一步使用splitBasicBlock()。errs() << "BasicBlock: " << currBB->getName() << "\n"; }} br label %74Function:mainBasicBlock: Bas
浏览 234
提问于2014-10-09
得票数 17
回答已采纳
1
回答
在.ll文件上
生成
名称
、
、
我是第一次接触
llvm
,我正在尝试使用下面的命令
生成
.ll文件。clang -S -O0 -emit-
llvm
1.c 但是在
生成
的1.ll文件
中
,
基本块
和指令没有name.So当我试图在我的代码中使用basicblock.getName()打印
基本块
的名称
时
,它不会打印任何东西有没有人能帮我在.ll文件上
生成
名字?
浏览 11
提问于2019-01-11
得票数 0
回答已采纳
2
回答
是否有可能从非苹果操作系统瞄准具有兼容的
LLVM
IR
/bitcode的iPhone?
、
、
、
、
好的,抛开明显的打包和签名问题,是否有可能通过使用从非Apple操作系统(
如
Linux或Windows )中正确构造的
LLVM
bitcode (
IR
)来编译IOS/iPhone兼容的可执行文件,例如使用一些开源编译器基础设施,
如
LLVM
、Clang或GCC?基本上,我想的是 编译一个预先存在的跨平台SDK (IOS兼容)到
LLVM
中间表示(
IR
/bitcode)。使用
LLVM
分析工具,分析和识别该层内部的IOS专用
LL
浏览 6
提问于2012-12-03
得票数 2
回答已采纳
1
回答
使用LLI计算动态执行的
LLVM
指令数
、
、
、
我希望使用lli 3.4计算在任何程序
中
动态执行的
LLVM
指令的数量。 我检查了链接,但它没有提供任何与指令计数相关的信息。
浏览 4
提问于2014-05-29
得票数 5
回答已采纳
2
回答
编写
llvm
字节码
、
我刚刚发现了
LLVM
,还不太了解它。我一直在使用来尝试它。我可以看到,我编写的任何C代码都被转换为
LLVM
字节码,然后再转换为本机代码。该页面显示字节码的文本表示形式。load i32* %1, align 4 ; <i32> [#uses=1]} 我的问题是:我是否可以编写字节码并将其提供给
llvm
浏览 2
提问于2011-03-24
得票数 6
回答已采纳
1
回答
给定一个
LLVM
IR
,我们能
生成
Clang吗?
、
、
、
就像我们有反编译器一样,它可以接受二进制代码并
生成
LLVM
IR
,比如或等等。我们有一些代码
生成
器可以将
LLVM
IR
转换为Clang吗?想要更多。
浏览 4
提问于2020-05-06
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
iOS代码染色原理及技术实践
LLVM支持龙芯架构
Numba和Cython如何加速Python代码
2018年移动应用安全,有几维就够了!
C++ 错题本 MAC环境下 unique_lock try_lock_for函数爆红问题
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券