Hi guys!
I asked this exact same question in the TI C/C++ Compiler subforum, but they couldn't help me, and thought the hardware forum would be a better place for it. I hope someone here can help me with my issue.
I'm having some trouble with floating point operations. Currently I'm running starterware on the beaglebone devboard, which features an AM3359 processor, and CCS 5.1 with TMS470. It is supposed to have support for NEON and VFP, so I tried to enable that in my project. Basically I just checked the boxes for --neon and --float_support (VFPv3). I also added some optimizations to the project, but all I got was crashes. I hence removed the optimizations to start debugging, and it turns out that I get thrown into exceptionhandler.asm as soon as my first floating point operation is done. It looks like this, where A, B, C and D are all integers.
float time=0.00001;
float tempx, tempy;
tempx = (((A*time)+B)*time+C)*time+D; <- Exception thrown here.
So basically now I assume that I've missed some sort of setting somewhere. I have included the relevant libraries; rtsv7A8_A_le_n_v3_eabi.lib for when I tried with --neon, and rtsv7A8_A_le_v3_eabi.lib when I run without --neon. I have also made sure to recompile all my libraries with --neon and --float_support (the project did not want to compile otherwise). I have also tried specifying --fp_mode to relaxed, but that didn't help. So basically my compilation flags look like this:
-mv7A8 -g --fp_mode=relaxed --gcc --include_path="C:/ti/ccsv5/tools/compiler/tms470/include" --include_path="C:/ti/AM335X_StarterWare_02_00_00_06/include/hw" --include_path="C:/ti/AM335X_StarterWare_02_00_00_06/include/" --include_path="C:/ti/AM335X_StarterWare_02_00_00_06/include/armv7a/am335x" --include_path="C:/ti/AM335X_StarterWare_02_00_00_06/include/armv7a/" --include_path="C:/ti/AM335X_StarterWare_02_00_00_06/usblib/include" --diag_warning=225 --display_error_number -me --abi=eabi --code_state=32 --neon --float_support=VFPv3
There feels like I'm still missing something, anybody have any ideas?
Kind regards
Lars