【问题标题】:Clang (MacOS 32/64): disable stack frames in some functionsClang (MacOS 32/64):在某些函数中禁用堆栈帧
【发布时间】:2019-10-27 10:48:06
【问题描述】:

Clang generates stack frames,即使是空函数,也适用于 MacOS 32/64 平台。在某些情况下,我需要防止生成堆栈帧。我应该使用什么属性?

【问题讨论】:

  • 即使优化构建也能做到这一点吗?不只是用于调试版本?

标签: c++ macos stack clang darwin


【解决方案1】:

快速的 Google 搜索显示 -fomit-frame-pointer 标志。

Live demo

【讨论】:

  • 没错。但。我只需要在 some 函数中删除堆栈帧!
  • 我明白了。我不认为有一个属性。一种可能的解决方法是将函数移动到单独的 .cpp 文件并(仅)使用 -fomit-frame-pointer 编译它。
猜你喜欢
  • 1970-01-01
  • 2015-09-18
  • 1970-01-01
  • 2013-10-12
  • 1970-01-01
  • 2016-01-12
  • 2023-03-03
  • 1970-01-01
  • 2021-12-05
相关资源
最近更新 更多