gpt4 book ai didi

c - avr-gcc 永远不会返回主要优化

转载 作者:行者123 更新时间:2023-12-02 21:28:02 31 4
gpt4 key购买 nike

我在某处读到,如果我从未从 main() 循环中返回,我可以通过 avr-gcc 中的一些编译器开关来节省 ~66 字节code>,但我找不到该网站了。

这是嵌入式的:

main() {
while(1)
{
// do stuff
}
}

最佳答案

对于gcc,您可以使用特殊属性来指示您的函数不返回:

int main() __attribute__ ((noreturn)) {
for (;;) {
// do stuff
}
__builtin_unreachable ();
}

您可以选择添加__builtin_unreachable ();来指示代码的某些部分永远无法到达。

虽然在大多数情况下可以通过优化标志正确识别,但没有这样的 while(1) 可以生成比 for(;;) 更多的代码。

关于c - avr-gcc 永远不会返回主要优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23064508/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com