0

此提交中,getDataLayout已在弃用后被删除。目前的获取方式是DataLayout什么?

4

2 回答 2

1

DataLayout 也应该在模块中,这就是为什么不再允许将其从 TargetMachine 中取出的原因。即基本上构建模块的任何东西都应该知道足以构建DataLayout。

于 2017-10-10T23:30:37.420 回答
1

估计TargetMachine::createDataLayout()可以用。

目标机.h:

const DataLayout createDataLayout() const { return DL; }

这将返回数据布局的副本而不是 const 引用。

如果有的话,这可以更安全地使用,因为数据布局的副本在 TargetMachine 对象被销毁后仍然有效。

如果我没记错的话,DataLyaout 不是一个特别大的类,所以复制开销应该是可以接受的。如果结果是一个问题,我建议保留一份副本以供非常频繁的访问。

于 2017-10-10T16:54:02.447 回答