llvm 相关问题

LLVM项目是模块化和可重用的编译器和工具链技术的集合。 llvm标记主要用于编写C ++代码(或通过C绑定的另一种语言)与LLVM库接口,而不是任何(不断增加的)具有LLVM的工具。

在llvm结构之间投

在我的开发中,一个函数返回一个{i8*, i64}类型的结构,而在调用现场,我需要将返回值分配给一个{some_struct*, i64}类型的结构。一种方法是调用 ...

回答 1 投票 0

使用irtranslator pass的opt会崩溃

当我用irtranslator通证运行opt时,我一直收到segfaults。下面是我一直在运行的一个变体: opt -debug -mcpu=x86-64 -S sample.bc --irtranslator 其他一些注意事项: sample.bc ...

回答 1 投票 0

退出时释放LLVM分配的所有内存

我正在使用LLVM-C来编写一个小玩具语言。我也在使用valgrind来检查内存泄漏。这是我的基本程序。#include #include int ...

回答 1 投票 0

生成llvm-ir时如何链接自写的运行时?

我目前正在研究一个方案编译器。目前,我正在借助Boehm GC编写运行时,目标是以后能够从llvm-ir中调用函数。什么是最好的方法...

回答 1 投票 0

LLVM从bool(i1)的向量到i8、i16等的位面cast是否定义清楚?

在LLVM中,一个类型为<8 x i1>的值能否被比特化为i8?如果可以,预期的位序是什么?LLVM文档中关于bitcast的内容并没有明确说明。它提出的要求是,bitcast ...

回答 1 投票 1

clang如何使用llvm?

当使用这样的命令:clang -### -O3 -a.c 然后,它会输出以下内容: clang version 1.1 (brantsrelease_27) Target: x86_64-unknown-linux-gnu Thread model: posix "tensorflow....

回答 1 投票 0

如何制作一个新的LLVM指令?

我想把指令%a = i32 add %b, %c变成%a = i32 mul %b, %c,我找了好几个小时,但到目前为止,我发现的答案都是与创建 ...

回答 1 投票 0

如何在llvmlite中把c语言转码到llvm [关闭] 。

我想用llvmlite做一个运行时,我想把c移植到llvm。我想知道,如果在llvmlite本身或在一些python库的方式,我不能在互联网上找到它,所以我来问......

回答 1 投票 0

如何在LINUX上将LLVM恢复到旧版本?

我已经安装了LLVM在我的WSL.But现在我需要一个旧版本的LLVM.How can I revert LLVM to old version? 我怎么能把LLVM恢复到旧版本呢?我用来安装它的命令: git clone https:/github.comllvmllvm-project.git cd ....

回答 1 投票 0

发出LLVM对象文件后如何运行linker?

我写了一个简单的玩具语言编译器前端,使用llvm-sys(LLVM的C库的Rust绑定)生成LLVM IR。然后,我通过创建一个基于LLVMTargetMachine的对象文件来生成 ...

回答 1 投票 1

有没有办法告诉clang在没有其他优化的情况下生成TBAA元数据?

LLVM中包含了一个名为 "基于类型的别名分析 "的别名分析(传github上的源码),它利用了指令中嵌入的 !tbaa元数据。元数据信息是这样的。!1 = ...

回答 2 投票 0

LLVM IR全局变量和函数声明是否必须使用 "external "和 "extern_weak "链接类型?

在LLVM IR链接类型中,说所有全局变量和函数都有以下一种链接类型:一开始,然后列举了几种链接类型,如private、internal、common、appending......。

回答 1 投票 0

有没有办法在llvm ir中区分指针类型?

我试图优化llvm ir中的代码,发现Types - isPointerTy没有区分*i8, *i16, *i32, *i64。打印出它们的类型值显然会得到不同的值。下面...

回答 1 投票 0

用cmake编译cppfile时,如何获得位码?

我搜索了一下教程,我可以用命令行尝试:clang -emit-llvm -o file.bc,但如何把它写在cmakelists中。我必须从源代码文件中获取所有的比特码文件。

回答 1 投票 0

llvm BasicBlock里面的变量对其他人可见吗?

假设我们有一个名为hello.world的函数,其中包含两个BasicBlock bb.1和bb.2,例如: i32 @hello.world(i32 %x) bb.1: %a = i32 %x bb.2: %b = i32 %a ret i32 %b 是变量 %a ....

回答 1 投票 0

LLVM API:创建ispose的正确方法

我正试图使用LLVM C API实现一个简单的JIT编译器。到目前为止,我在生成IR代码并执行它时没有任何问题,也就是说:直到我开始处置对象并重新创建它们。...

回答 2 投票 5

如何在LLVM中转储CC++编译单元的类型层次结构。

我想在LLVM中转储一个CC++编译单元的类型层次结构。例如,考虑这样的C代码: struct S { int a[3]; char *s; }; struct T { float f; struct S t; }; 我想得到......。

回答 1 投票 -1

从语义学的角度来看,Rust中的"&mut "noalias的未定义行为是什么时候发生的?

正如Rust参考文献所说 打破了指针别名规则.&mut T和&T遵循LLVM的scoped noalias模型,除非&T包含一个UnsafeCell。这真是...

回答 1 投票 3

LLVM "manifestdependency: is not allowed in .drectve "的解决方法。

我有一个使用wxWidgets构建的比较复杂的GUI应用程序,我可以在MSVC上编译并运行得很好,但是当我在Visual Studio中使用LLVM编译时,出现了 "manifestdependency:is not ... "的情况。

回答 1 投票 1

将整数转换为浮点数的LLVM通道。

我正在编写一个LLVM通证,需要将一个整数类型转换为各种浮点类型。我试图使用UIToFp指令将整数值转换为浮点值。...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.