本文主要是介绍C6000中C语言的编程及优化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 对数据类型的考虑- 字符型(char)
8bit - 短型(short)
16bit - 整型(int)
32bit - 长型(long)
40bit - 浮点型(float)
32bit - 双精度浮点型(double)
64bit
- 避免在代码中将int和long作为同样尺寸处理,因为C6000编译器对long型数据使用40bit操作
- 对于顶点乘法输入,应尽可能使用short类型,因为short型提供了C6000
16位乘法器最有效的使用 - 对循环计数应使用int或者无符号int型,不能使用short或者无符号short类型,避免不必要的符号扩展指令
- 当使用C67**或者C64**应分别使用-mv6700活-mv6400编译器开关,以使所产生的代码能利用其增加的硬件资源和指令集。
(1)使用关键字restrict来标明一个指针是指向一个特定对象的唯一的指针。
(2)联合使用-pm与-O3编译选项
(3)使用-mt选项
3. 优化C语言程序
(1)使用intrinsics(内联函数)
(2)对短字长的数据使用宽长度的存储器访问(数据打包处理)
(3)软件流水
- 循环次数
- 消除冗余循环
- 循环展开:循环展开是在程序里把小循环的迭代展开,使得可能并行的指令数增加从而改进软件流水安排,改善程序代码。
这篇关于C6000中C语言的编程及优化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!