编译器优化 问答列表

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

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

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

使用 gcc -O3 优化时,为什么循环索引的类型会影响 gcc 的内部 GIMPLE 向量常量(但不会影响最终的 asm)?

作者:Daisy G 提问时间:11/1/2023

我创建了一个结构数组,这是我的源代码。 #include <stdio.h> #include <stdlib.h> #define N 256 typedef struct arc { i...

为什么这些 c++ 协程在一种情况下会正确优化,而在另一种情况下却不能?

作者:user5406764 提问时间:11/12/2023

我有一组协程(生成器),我从 func1 和 func2 调用它们。 问题是:虽然编译器正确地优化了 func1 中的协程,生成了一个常量,但为什么它在 func2 中无法做到这一点? https:...

如果 Rust 会立即删除 clone(),我们能确定它会优化它吗?

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

显然,在 99% 的情况下,它是否存在并不重要,而只是为了帮助像我这样愚蠢焦虑的开发人员在晚上睡个好觉: 假设您有调用复杂库函数的代码,该函数返回一个可变引用,然后您想要返回该引用。碰巧此引用是实现...

Swift 中的 @inlinable 属性是什么?

作者:yasin89 提问时间:10/30/2023

我对功能有更多的研究,但找不到任何简单的解释。@inlinable @inlinable func printPlusOne(_ num: Int) { print("My number: \(n...

默认在 Swift 文件中导入其他模块

作者:Bahattin 提问时间:10/28/2023

我的工作区中有 2 个项目。“主项目”和“样式”项目。我在 Style 项目中有一些扩展。当我想在主项目中使用这些扩展时,我需要导入 Style 项目。我需要将其导入大约 4000 个文件。有没有办法...

使用特殊的编译标志编译目录中的某些文件

作者:H.atyq 提问时间:10/26/2023

我在项目目录中有几个文件,我想使用非常具体的编译选项编译某些文件,并使用标准编译选项编译其他文件,我想使用其他文件来处理文件。 我目前遇到的问题,程序在if语句上崩溃,你能帮我吗? 对于信息,我使...

编译器如何处理 IF 语句的优化

作者:user22155685 提问时间:10/25/2023

我正在读一本书,描述了为什么需要它Volatile class ThreadsSharingData { private Int32 m_flag = 0; private Int32 m_va...

为什么单独循环中的元素添加比组合循环中的元素添加要快得多?

作者:Johannes Gerer 提问时间:12/18/2011

假设 、 、 和 指向堆内存,我的数字代码具有以下核心循环。a1b1c1d1 const int n = 100000; for (int j = 0; j < n; j++) { a1[j] ...

带有优化标志的 gfortran 如何解释嵌套的隐含 do 循环?

作者:Kristian HM 提问时间:10/16/2023

我对 gfortran 有一个问题,我试图在一般层面上理解它,以避免将来再次遇到它。具体来说,我试图了解嵌套隐含的 do 循环在读取数据时的行为,以及 gfortran 优化标志如何影响它。 作为我...


共35条 当前第2页