首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >llvm.memcpy.p0i8.p0i8.i64来自哪里

llvm.memcpy.p0i8.p0i8.i64来自哪里
EN

Stack Overflow用户
提问于 2019-03-22 13:36:44
回答 1查看 516关注 0票数 0

我测试并编译了一个简单的C文件,包括结构asigning.when我看到了LLVM代码,有llvm.memcpy.p0i8.p0i8.i64,是从哪里来的?我没有看到定义,只看到它的声明是一个函数。

EN

回答 1

Stack Overflow用户

发布于 2019-03-22 17:41:27

它是一个LLVM内部函数。根据语言参考:

LLVM为一些重要的标准C库函数提供了内部函数。这些内部函数允许源语言前端将有关指针参数对齐的信息传递给代码生成器,从而为更高效的代码生成提供了机会。

具体地说,llvm.memcpy固有的:

‘llvm.memcpy.*’内部函数将一个内存块从源位置复制到目标位置。

请注意,与标准的libc函数不同,llvm.memcpy.*内部函数不返回值,采用额外的isvolatile参数,并且指针可以位于指定的地址空间中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55293471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档