有关clang LLVM编译器前端的问题。有关C的一般问题,请使用C标记。
为什么 clang 的 `-O3` 分配在简单的分配基准上比 g++ 快 2 倍
关于alloca的使用和滥用 在上一个问题的底部得到了一些基准。 clang 显然在 -O3 优化器配置文件中有更好的实现。什么给?是叮当切割任何cor...
在 Linux 环境上构建 CLang 后,我尝试使用 Visual Studio 在 Windows 上构建它。一切都很顺利,但是当我尝试编译这个经典的 Hello World!程序 #包括<
有没有办法在 Objective-C 中添加头文件中没有的 iVar(不使用 LLVM 2.0 或更高版本)?
我最近了解到可以使用 LLVM2.0 在类扩展中添加 ivar。 (海湾合作委员会不能这样做) 这在某种程度上确实是私人 iVar,因为其他用户不知道它的存在,因为它不在他的...
为什么 clang 的 `-O3` 分配比 g++ 快 2 倍
关于alloca的使用和滥用 在上一个问题的底部得到了一些基准。 clang 显然在 -O3 优化器配置文件中有更好的实现。什么给?叮叮当切任何c...
对于 C 开发人员来说,Clang 版本 2.8 和 3.1 之间有什么实际区别吗?
我将专门使用 C 语言工作。Ubunutu 10.10 将从其存储库中检索 Clang 2.8 版本并完全安装它。我已经从源代码编译了 Clang v 3.1 并将其添加到了...
我应该开始用我的 C++ iPhone 项目来定位 Clang / LLVM 吗?
Apple 大力推动 LLVM 和 Clang。有传言称,这是因为 Apple 想要放弃 GCC(由于 GPLv3 许可证问题),转而使用 Clang。 任何人都知道什么时候会发生......
有什么方法可以让 gcc 或 clang 对显式强制转换发出警告吗?
我想做的是在我拥有的一些源文件中找到从 double 或 float 类型到任何其他类型的所有显式转换。有内置的 gcc 方法可以做到这一点吗? 语言是 C。
编写 C 函数的正确方法是什么,然后我将其链接到我的 llvm IR 程序。 这就是我目前编译程序的方式: clang -c out.ll -o out.o 叮叮当当 这太粗糙了...
为什么C++中的LLDB能够打印我的整个数据结构,但无法打印子组件?
我使用的是 Mac OS Sonoma 14.5,通过 x 代码工具安装了 LLDB 1500.0.404.7。我注意到我的 LLDB 的行为方式相当令人困惑。它能够打印出一些 std:containers 的整个...
如何强制 gcc 对非文字格式字符串进行 printf 检查?
const char* const non_literal_string = "Hello %d"; 无效 my_print() { /* * 我希望 GCC 在编译此行时发出警告,因为 * 参数不是整数...
使用 clang-c 索引文件不会触发我的 ppIncludedFile 回调
我正在使用下面的 Objective-C 类来索引 Objective-C 文件。我尝试过解析同时使用 #include 和 #import 的文件,以及尖括号和引用的头文件。在任何情况下我的
我正在尝试在 x86_64 上试验半精度浮点数 (_Float16)(为什么不呢?)。 clang-17(在 ubuntu-20.04 上)似乎可以正确编译,但链接器显示以下错误: /usr/bin/ld: /tmp...
clang 和 gcc 中是否有 Visual C++ __declspec(属性声明属性)的替代方案?
有一个 Microsoft 特定的扩展,它可以像这样定义属性 getter 和 setter: // declspec_property.cpp 结构体S{ 整数我; 无效 putprop(int j) { 我=...
我有两个工作编译器,Mac 上的 clang,它可以针对 iPhone,以及 iPhone 上的 clang,它也针对 iPhone。通常两者都可以很好地工作,生成二进制文件和库。图书馆产品...
我翻阅了clang的C++标准库,在shared_ptr类中找到了这个类。 类shared_ptr // ... 私人的: 结构 __nat {int __for_bool_;}; // ... }; 我明白...
在 Clang 中从限定类型 (QualType) 合成声明
使用 Clang C++ API 时,假设我有一个 QualType,我将如何合成该特定 QualType 的变量声明,这只是为了询问该声明的属性...
是否可以使用RecursiveASTVisitor仅遍历AST的子树
我想用clang的RecursiveASTVisitor遍历一个具有巨大AST的项目。当我指定应该遍历整个 AST 时(如下所示),需要花费很多时间: 无效我的访客::
在 clang 中,假设我有一个 QualType,我将如何合成该特定 QualType 的变量声明,这只是为了询问该声明的属性,我不打算
`__DATA_CONST` 在 Mac OS M1 上将库链接到 pybind11 模块时出错
我正在尝试为 Mac OS 开发一个用于科学计算的库。它可以在 Linux 上运行并编译文件,但由于某种原因,我在 Mac 上遇到奇怪的错误。 ld:__DATA_CONST 段丢失
如何将 opencl-kernel-file(.cl) 编译为 LLVM IR
这个问题与LLVM/clang有关。我已经知道如何使用 OpenCL API(clBuildProgram() 和 clGetProgramBuildInfo())编译 opencl-kernel-file.cl。 我的问题是: 如何编译opencl-