Problems of the infinite loop named "__lib_prog_term"
Hi All,
When I connect to the target by using the emulator and execute my program code,it halts at the step "__lib_prog_term".That is a infinite loop in Disassembly:
__lib_prog_term
IF true,JUMP __lib_prog_term
Before it stop,the program call the function that is defined inside the library file(.dlb) created by another project.My processor is TS101.
How should I do so that I can run the program successfully?
Hoping for a positive response.
Thanks and Regards,
Jia
Hi Jia,
the infinite loop at __lib_prog_term catches an application at the end of its execution and loops. Your code looping here indicates that your application has executed to completion and is now idling.
Regards,
Craig.
Hi Craig,
Thanks for your reply!
When the program runs into the function codes,it just execute a part of the codes,not all of them.Then it automatically halts at the the infinite loop __lib_prog_term.It seems to the execution of the program isn't complete.What dose the case mean?indicates there is something wrong with my codes?
Maybe the description isn't enough detailed.
Regards,
Jia
Hi Jia,
This behaviour may indicate that there is something wrong with your code, in terms of how the actual behaviour differs from your expected behaviour. To determine if the behaviour is correct/expected we would need to take a look at the code. If you do not want to post your code here, we recommend contacting private support regarding this matter, and include a link to this thread:
http://www.analog.com/processors/support
Regards,
Craig.
Hi Craig,
Sorry delay for response!
Thanks for your info! As you say,there was something wrong with my code,I have sovled the problem.
Now other questions confuse me, can you help me?
(1)when I build the project,it appear Link Warning:
[Warning li2151] Input sections have inconsistent qualifiers as follows.
CHAR8 | .\Debug\LowLevel.doj(data1)
CHAR8 | .\Debug\LowLevel.doj(program)
......
The cause is that the -char-size-8 switch is checked.The warning shouldn't affect the program. What shoul I do so that it dosen't print the warning, or should the warning be ignored?
(2) My project include the file fft32.asm located in ...\Analog Devices\VisualDSP 5.0\TS\Examples\ADSP-TS101 EZ-KIT Lite\Spectrum Analyzer.When it's compiled,there is a warning:
[Warning ea3156] ".\fft32.asm":423 Only CB/IALU registers can be loaded
from external memory. Please use a CB/IALU register as an intermediate to ensure
this is not happening.
For now,the program can work correctly.Will it encounter some case that it dosen't work because of this?
(3) The question is about FFT,its source file is also fft32.asm.The limitation of FFT's input datas is that InputData must be aligned on memory boundary which is a multiple of FFT point N. My FFT point is 1024 and it is complex FFT,it can not work correctly when I align InputData on 2048.But InputData is aligned on 4096, the result of FFT is correct.Which number is appropriate for aligning InputData on?
Hope for your reply.
Regards,
Jia.
Hi Jia,
I would recommend keeping separate questions in separate threads, when they are on different topics like the questions in this thread. Regarding Questions 1 and 2 above, please take a look at the Help for this errors. You can do so by highlighting the error number (e.g. li2151) and pressing F1, or going to 'Help'->'Index', and typing the error number.
For the 3rd question I would recommend starting a new thread, and providing an example project.
Regards,
Craig.
Hi Craig,
Thanks for your suggestion!
Regards,
Jia.
Please log in to reply.