Part Number:TMS320F28388D
如题:cla上定义int64的变量,但是没办法正常赋值;
例如
int64 temp;
temp = 9999999;编译后会出现:a value of type" long long "can not be assigned an entity of type o"int64"
temp = temp * 0.0125;编译后会出现:expression must have arthmetic type
Green Deng:
你好,可以看一下这份编译器使用手册218页的Table 10-1. CLA Compiler Data Types:
www.ti.com.cn/…/spru514y.pdf
,
user4486550:
谢谢的你回答,我还有一个问题是我定义了一个int64的变量,但是在运算时有提示说道:
single-precision float to double-precision float conversion operation was not eliminated during optimization. using inefficient fallback;consider modifying code to not require this operation.
应该是不能运算啊,CLA是不支持64位吗?再次谢谢
,
Green Deng:
具体是如何定义的?
这个提示是运行的时候出现的还是编译的时候出现的,是警告还是报错?
,
user4486550:
是属于(performance),编译的时候出现的,应该是属于警告类吧
,
Green Deng:
额。。。performance是指什么?一般要么是warning,要么是error。方便截个图吗?
以及,你具体如何定义的说明一下,可以的话给出这部分代码。
,
user4486550:
,
Green Deng:
考虑修改定义类型吧,如果是C28核的,那就按照Table 6-1修改。如果是CLA的,那就按照Table 10-1修改.
,
user4486550:
还有个问题,为什么我调用CLAexp(0)计算出来的结果是0呢?CLAexp(任何值)都是输出0,为什么呢?
,
Green Deng:
CLA程序里面有包含CLAmath.h吗?其他CLA的计算函数能正常使用吗?
,
user4486550:
除法这些库是可以,但是只要是指数就不行,例如:CLAexp2,CLAexp10,CLAexpN这些都不行,输出结果都是0.
,
Green Deng:
可能是没有给CLAmathtable分配内存?看一下这个帖子:
e2e.ti.com/…/claln-and-claexp-not-working-on-28377delfino
,
user4486550:
我按照《CLA_MATH_LIB_UG》的第四章操作,我用的是cla_math_library_fpu32.lib,已经在生成的map文件看到了CLAexp的内存分配了,但输出结果依然是0,实在不知道哪儿不对,查看了例程也查不出差异来
,
user4486550:
还有一个现象是,我在CLA文件调用CLAexp的程序代码,关键字CLAexp字体没有变为紫色,是不是我工程属性哪儿没有设置对?在CPU的关键字Exp是可以变色为紫色的。
,
Green Deng:
你好,问题可能跟库的调用有关。
你这边方便点击网页右上角"提出相关问题"发布一个新的相关贴吗?将CLAexp的问题详细描述一下,方便的话附上代码和关键字不突出显示的截图,届时会有工程师为你解答。
,
user4486550:
好的,谢谢