I am launching loadti with the -a option for asynchronous run.
From a normal code composer IDE session, if I 'Run' my target with this test code and then terminate the debug session, I can see that the target is still running. (LED still blinking).
But, from debug server the code is started with the 'runAsync' method, and it runs for a while (because the LED blinky counter has counted up a lot..) but then is halted when the session terminates. I connected to a board in this state with CCS and no gel to see where it was and found it in that blinkly loop with the counter pretty far along.
I made a copy of loadti to hack into and I found that adding this:
debugSession.options.setBoolean("AddCEXITbreakpointAfterLoad", false);
Before the run async
debugSession.target.runAsynch();
command 'fixes' the issue. (The default is 'true' for AddCEXITbreakpointAfterLoad).
I've tried a few times changing the script from true to false and whenever that option is true, the target halts after the DSS script exits.
Whenever it's false, the target continues running (desired behavior).
I don't think this is correct behavior though, because the program's main function never returns; yet the program halts when the option is set.
The target is a Cortex R4F (TMS570LS3137).
Any guidance would be appreciated, if this needs to be reported on a CQ I'll do that if you tell me.