Sorry, but this drives me crazy... I´m using an TMS 570Ls20216...
I´ve implemented a simple data Abort handler, which looks like this:
#pragma
INTERRUPT (dataAbortHandler, DABT)
void dataAbortHandler(void)
{
dataFault=_coreGetDataFault_();
dataFaultAddress=_coreGetDataFaultAddress_();
dataAuxFault=_coreGetAuxiliaryInstructionFault_();
_coreClearDataFault_();
asm(" B #-8");
}
All i want to know is, where in the source the abort happened, but "datafaultaddress" only returns nonsense values. I suspected me thinking wrong (maybe this value represents the location of the data memory which is wrongfully accessed) and added a "_coreGeIintructionFaultAddress_" but that result made even less sense at all.
What´s wrong?
best regards
Dominik