The compiler crashes with a segmentation fault if the HPI pragma is used for an interrupt. It does however work when using the -ppc compiler option.
Windows platform, C2000 v16.9.0.LTS
Example:
#pragma INTERRUPT (hpi_bug, HPI)
void interrupt
hpi_bug(void)
{
}
$ ../../c2000/compiler/bin/cl2000.exe --float_support=fpu32 -mt -v28 -O4 --keep_asm interrupt_hpi_bug.c
INTERNAL ERROR: C:\projects\c2000\compiler\bin\cg2000.exe experienced a segmentation fault
while processing function _hpi_bug
This is caused by a defect in the compiler itself. TI Customer
Support may be able to suggest a workaround to avoid this.
Upgrading to the newest version of the compiler may fix this problem.
Contact TI in the E2E support forums at http://e2e.ti.com under
"Development Tools", "TI C/C++ Compiler". See the link titled
"Submitting an issue". Include this ENTIRE error message and a
copy of the .pp file created when option --preproc_with_comment
(-ppc) is used.
>> Compilation failure
$ ../../c2000/compiler/bin/cl2000.exe --float_support=fpu32 -mt -v28 -O4 --keep_asm -ppc interrupt_hpi_bug.c
$ cat interrupt_hpi_bug.pp
#pragma INTERRUPT (hpi_bug, HPI)
void interrupt
hpi_bug(void)
{
}
BR
Tore Skjellnes