小编Ale*_*ook的帖子

优化器删除指针去参考线

我有一个问题,优化器似乎正在删除非常必要的代码行.一些背景:我有一个连接PCIe驱动程序的程序.我有一个整数指针UINT32 *bar_reg;,指向我正在与之通信的BAR寄存器的用户空间地址.要写入寄存器,我只需要取消引用指针.*(bar_reg + OFFSET) = value;

没有优化,这很好.但是,只要我打开任何级别的优化,就会删除所有取消引用指针的行.我最终发现这一点的方法是在Visual Studio中逐步完成.然而,它发生独立于平台.到目前为止,我已经能够关闭优化器,但是在Linux中使用我的库代码的人现在想要启用优化.所以我很好奇为什么会出现这个问题以及最合理的修复/解决方法是什么.

c++ optimization pointers

5
推荐指数
1
解决办法
106
查看次数

标签 统计

c++ ×1

optimization ×1

pointers ×1