Jay*_*y D 1 c compiler-construction optimization structure definition
我只是想知道在C结构(C结构定义)中打包项(int,float,unions等)时要遵循的注意事项,这将允许编译器进一步优化它.
我想知道是否应该遵循任何指导原则,例如以允许对齐单词边界的顺序向结构添加项目.等?
细节将不胜感激.
问候,-J
该问题还需要针对交叉编译此类C结构的优化策略.
如果您真的想要最小化空间,请从最大对齐到最小对齐.这应该保证你将获得最小的填充.
如果你可以在gcc下编译你的代码,你可能可以使用pahole来查找可以改进的结构,并自动重新打包它们.
这里有几篇关于pahole的文章可能会对你有所帮助: