clang 问答列表

如何在 Linux 上将 libc 的高级版本与我的二进制文件打包在一起

作者:ipcamit 提问时间:10/31/2023

我正在编写一个科学库,它使用酶来生成衍生物,并将所有内容捆绑在一个二进制共享文件中。为了在 Linux x86_64 上分发它,我使用 patchelf 将它与我的系统 libc 一起打包并给出适当的...

Clang++ 创建共享库,我可以禁用 SO 版本命名吗?

作者:Lothar 提问时间:11/1/2023

在为 Android 编译库时,我发现它不支持任何版本编号。我花了几天时间试图弄清楚以后使用 patchelf 删除编号,但 Java Android Linker 仍然拒绝解析版本号中的符号,因此文...

如何在可变参数函数包装器中强制类型提升?

作者:haton 提问时间:11/3/2023

我正在编写一个包装器来调用 vtable 中的 API 函数。这是通过一个可变参数的 temple 完成的,以使用任意数量的参数包装 API 函数。 我发现,只有当作为参数传递的数字被强制为长时,某些...

C++ 参数传递优化普通类大小

作者:resu 提问时间:11/4/2023

我有一个微不足道的,它代表了 std::int8_t 的类型安全包装器。 已简化为表示最小的可重现问题。struct AA 出于性能原因,在此示例中将 struct 作为参数传递时,结构应遵循与 b...

使用对局部变量的引用来初始化 constexpr 变量是否有效?

作者:phinz 提问时间:10/31/2023

以下代码仅在 GCC 上编译(在 godbolt.org 上的 10.4 和 13.2 上检查了它),但不能在 Clang 上编译(在我尝试过的所有版本上都失败,例如 godbolt.org 上的 1...

为什么 GCC 会复制“std::ranges::max”中每个比较的对象?

作者:Andrew 提问时间:11/2/2023

请看以下示例 (Godbolt): #include <vector> #include <iostream> #include <ranges> #include <algorithm> str...

寄存器 fp 和寄存器 sp 的区别是堆栈大小吗?和 M1 芯片上的 L1 数据缓存设计

作者:Cedyangs279 提问时间:11/5/2023

使用 LLDB 分析我编写的 C++ 程序。 如果“STACK”主要存在于 L1 CACHE 上,那么说这两个寄存器之间的差异是当前堆栈大小($fp减去 $sp)的度量是否正确。 由于 M1 的“...

CLion 和 standalone 的 clang-tidy 产生不同的结果

作者:Aaron 提问时间:11/5/2023

我在 CLion 中使用某个版本启用了 clang-tidy。我想将 clang-tidy 添加到作为独立脚本运行的 CI(持续集成)流程中。但是,尽管 clang-tidy 版本相同,配置文件 (....

Clang中没有x86 BMI指令BLSI和BLSR的内部函数?

作者:xealits 提问时间:11/6/2023

我想尝试一些 x86 BMI 集的内在因素。显示和我的 AMD Ryzen CPU 中。但是我无法让 clang 编译一些指令,特别是 BLSI 和 BLSR。看起来它们在 clang 的 bmiin...

如何在 Linux 上的 clang 中获取模板实例化统计信息?

作者:CurDev 提问时间:11/6/2023

我正在探索 C++ 中模板的不同方面,并希望更深入地探讨这个主题。 例如,我在一些头文件中有一个非常简单的函数模板: template<typename T> void foo(T value) ...


共117条 当前第10页