Hi,
we get an FPU overflow (PIE 12.7) interrupt and wonder where it might come from.
Is there an issue with register save? The generated code is
cpu_timer0_isr():
01484e: 761B ASP
01484f: FFF0 PUSH RB
014850: 0005 PUSH AR1H:AR0H
014851: ABBD MOVL *SP++, XT
014852: AABD MOVL *SP++, XAR2
014853: A8BD MOVL *SP++, XAR4
014854: A0BD MOVL *SP++, XAR5
014855: C2BD MOVL *SP++, XAR6
014856: C3BD MOVL *SP++, XAR7
014857: E20000BD MOV32 *SP++, STF
014859: E20300BD MOV32 *SP++, R0H
01485b: E20301BD MOV32 *SP++, R1H
01485d: E20302BD MOV32 *SP++, R2H
01485f: E20303BD MOV32 *SP++, R3H
014861: E6300600 SETFLG RNDF32=1,RNDF64=1
014863: FF69 SPM #0
014864: 2942 CLRC OVM|PAGE0
014865: 5616 CLRC AMODE
I know Table 3-4. Register Pairs Saved and SP Positions for Context Saves in SPRU430F.
What with R4H to R7H? Are they not used by the compiler?
What with XAR3? Any problems with TMU?
Any other reason?
Compiler flags are:
-v28 -ml -mt --cla_support=cla1 --tmu_support=tmu0 --vcu_support=vcu2 -O2 --include_path="C:/ti/ccsv7/tools/compiler/ti-cgt-c2000_16.9.6.LTS/include" --include_path="C:/workspace/firmware/duc/rtos/include" --include_path="C:/workspace/firmware/duc/test_rtos_f2837xs_launchpad" --include_path="C:/workspace/firmware/duc/device_support/f2837xs/headers/include" --include_path="C:/workspace/firmware/duc/device_support/f2837xs/common/include" --define=_LAUNCHXL_F28377S -g --diag_suppress=10063 --diag_warning=225 --issue_remarks --verbose_diagnostics --quiet -k
Thanks and regards,
Frank

