我用的是TMS320F2812,用CCS编译,想利用内联函数加快程序的执行效率,内联函数定义在一个头文件中,函数定义前加了inline关键字,在主程序中调用该内联函数,编译无错误,但是查看汇编,其实该内联函数在编译时并没有被加载到我要调用的地方,而是通过LCR指令被调用,相当于普通函数被调用一样,此时我的编译优化器处于未开启状态,请问是怎么回事?要怎么改动才能成功使用内联函数?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我用的是TMS320F2812,用CCS编译,想利用内联函数加快程序的执行效率,内联函数定义在一个头文件中,函数定义前加了inline关键字,在主程序中调用该内联函数,编译无错误,但是查看汇编,其实该内联函数在编译时并没有被加载到我要调用的地方,而是通过LCR指令被调用,相当于普通函数被调用一样,此时我的编译优化器处于未开启状态,请问是怎么回事?要怎么改动才能成功使用内联函数?
可以按以下操作,试试看
使用预处理命令 #pragram FUNC_ALWAYS_INLINE()
优化等级选2 Gloabl Optimizations
#pragma FUNC_ALWAYS_INLINE(Func_test)
inline unsigned int Func_test(unsigned int count)
{
return(0);
}