LLVM项目是模块化和可重用的编译器和工具链技术的集合。 llvm标记主要用于编写C ++代码(或通过C绑定的另一种语言)与LLVM库接口,而不是任何(不断增加的)具有LLVM的工具。
使用libclang,有没有办法知道在内联变量初始化的上下文中是否引入了闭包类型?
给出以下 C++ 代码: 内联自动 v = []{ 返回 1; }(); 闭包类型的上下文是内联变量的初始值设定项。这导致了 Itanium ABI 中的特殊修改规则(
我已经安装了 vscode (Ubuntu) 的扩展,设置了一下它就可以工作了,但现在我没有完成诸如 template、typename 等关键字。更糟糕的是 clangd 会自动插入
迭代优化是指对优化后的二进制文件进行采样以获得pgo_bolt_bin.perf_data,并使用pgo_bolt_bin.perf_data进行pgo和bolt优化。 让我从我目前所知道的开始......
我尝试构建 llvm 并收到与 stdlib 相关的错误消息。 我用错误消息搜索了原因,但是 我不太了解 c/c++,所以我不明白发生了什么或如何解决这个问题。 拜...
如何创建使用 LLVM 的 Visual Studio 项目
我正在尝试使用 LLVM 来实现玩具语言的编译器。类似于万花筒教程。我在 64 位 Windows 上使用 Visual Studio。 我已经成功地使用 V 构建了 LLVM 和 clang...
为什么我会收到 256 位算术错误:在 C++23、Clang-18 中“不支持位大小大于 128 的 unsigined _BitInt”?
我需要在带有arm处理器的Mac上的C++代码中使用256位算术。 根据 Stack Overflow 的回答,C++23 通过 _BitInt(256) 具有 256 位算术,并且已在 Clang 中实现...
除 getelementptr 之外的 LLVM 常量表达式
LLVM 有常量表达式的概念,https://llvm.org/docs/LangRef.html#constant-expressions 这些是一种将算术和逻辑等各种运算应用于常量操作数的方法,...
为什么 clang/llvm 在构建 Carbon 时使用 Bazel 向我抛出此错误
所以我正在尝试构建carbon-lang,我已经完成了所有操作,安装了 clang/llvm 它工作正常,但是当我运行命令 bazel run //explorer -- ./explorer/testdata/print/format_only.carbon 它给...
根据https://llvm.org/docs/LangRef.html#functions LLVM 函数定义由“define”关键字、可选的链接类型、可选的运行时抢占说明符、可选的
在我的Mac OS X版本(10.7.1(Lion)和Xcode 4.1)上,有LLVM 3.0svn和Clang 2.1。 当前版本是 LLVM 3.0 和 Clang 3.0。 从Xcode网站来看,似乎最新版本...
如何在启用不透明指针的情况下在 LLVM 17 中获取指针级别?
根据 llvm 不透明指针文档,自 LLVM 17 起仅支持不透明指针,这意味着不再可能通过
可以在ebpf prog中使用memcpy或memset吗?
我已经关注了 ebpf prog,但是当用 clang 编译时,它报告错误: ip4_str[m++] = temp[j]; 不支持对内置函数 'memset' 的调用。在 ebpf prog 中,我们不能使用字符...
llvm-objdump 相当于 aarch64-none-linux-gnu-objdump
假设我将四个字节放入一个文件中,然后使用 GNU 工具链反汇编它: -bash$ echo -en '\x1f\x20\x03\xd5' > ./myFile -bash$ aarch64-none-linux-gnu-objdump -m AARCH64 -b 二进制 -D ./
我需要将 MIR 文件传递给 LLC,以便我可以使用 -run-pass 选项,但我找不到有关从 opt 输出为 MIR 的任何信息。我怎样才能做到这一点?
我的 Postgres(具有 PostGIS 扩展)在此执行期间崩溃了: 从 Planet_osm_polygon 选择 MIN(LENGTH(ST_ASTEXT(way))); 日志记录说: 错误:不是 int 属性(生产者:'LLVM15.0.6'
我尝试在不使用 -g 选项的情况下编译 eBPF 程序,但仍然需要将 BTF(BPF 类型格式)信息附加到生成的目标文件中。我正在开发 LLVM ir pass,但我不...
我想使用插件修改 clang AST。 我遵循使用 Clang Rewriter 对象的建议。 我使用compiler.createDefaultOutputFile()来获取输出流来编写
所以我有这个 LLVM-IR 代码: ; ModuleID = '示例.-.input.c' source_filename = "示例.-.input.c" 定义 ptr @test() { 入口: %0 = 分配 ptr,对齐 8 %1 = 分配 i32,对齐 4 圣...
是否有某种方法可以从 libclang 获取源文件中的 C++ 代码是否具有正确语法的信息?即使使用无效的 C++ 代码,Libclang 也会尝试创建翻译单元。