We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Dear all
I came across the below .S file when I'm googling for looking a example of startup code.
//////////////////////////////////////////////////////
.section .text .globl main0 .globl main1 .globl main2 .globl main .globl __aeabi_unwind_cpp_pr0 .globl __aeabi_unwind_cpp_pr1 main0: main1: main2: main: bl startboot __aeabi_unwind_cpp_pr0: __aeabi_unwind_cpp_pr1: b __aeabi_unwind_cpp_pr0
//////////////////////////////////////////////////////////
But I can't find what __aeabi_unwind_cpp_pr0~1 's purpose and mean.
Would you please help me and let me know What is the purpose and mean of using __aeabi_unwind_cpp_pr0 and __aeabi_unwind_cpp_pr1 ?
__aeabi_unwind_cpp_pr0: __aeabi_unwind_cpp_pr1: b __aeabi_unwind_cpp_pr0
Where did you come across it?
Have you asked the author about it?
This suggests that it's GCC - not Keil: stackoverflow.com/.../what-is-aeabi-unwind-cpp-pr1-and-how-can-i-avoid-it
Hello Carter,
Thank you for using the Keil tools for ARM.
- Perhaps you are no longer using any C++ files (CPP files) in your project, so there was no longer a need to do C++ unwinding, so those symbols never got created?
- Perhaps you are using the ARM Compiler 5 instead of the ARM Compiler 6 for your project? You can check what compiler you are using in your project here:
- www.keil.com/.../uv4_defaultarmcompilers.htm
- Perhaps you are setting one of these commands to disable unwinding?
- developer.arm.com/.../-exceptions_unwind-no_exceptions_unwind - developer.arm.com/.../frame-unwind-off
For Context, you can read about unwinding at:
- developer.arm.com/.../exception-tables-and-unwind-tables - sourceware.org/.../ARM-Unwinding-Tutorial.html - developer.arm.com/.../frame-unwind-on