您好,
我不确定我是否理解这些EABI函数,但我得出结论,当我使用双精度 操作数(例如乘法)时,编译器在编译过程中会发现我使用的是双操作数乘法并将其存储在内存中的某个位置。 我在相关的ASM文件(例如 FD_MUL_T2.asm文件)中看到,他们有一些在我看来是link命令的内容。 例如:
如果__TI_EABI_汇 编器 ;根据指定外部名称 .ASG __aeabi_dmul,__TI_FD$MUL;正在构建RTS 否则 .clink ASGFD F$MUL,__TI_FD MUL endif .global __TI_FD$MUL
是否可以使用.cmd文件将此函数存储在内存中的给定地址上,或者这些文件中的链接命令是否告诉编译器将给定函数放置在何处?
我的问题是,我有一个项目在其中创建函数(在本例中为a *b,其中a和b为double),然后我获取该函数的十六进制数据, 并使用RF将其发送 给下载该函数并在需要时使用该函数的某个设备。 现在,双乘函数不是存储在同一个内存中,我的程序跳转到错误的地址(在我的例子中,是一些IQmath函数)。 另外,如果给定项目仅使用整数和IQ库,那么在下载此函数并使用双乘操作数之前,我甚至不确定是否在其他项目编译器上输入了任何双精度函数?
对不起,如果我使用了错误的术语(例如双乘操作数),我不知道如何解释我的问题:D
此致,
Ugljesa Popovic。