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.
In Cortex-M7,Why the address of fuction printed is not same as the one mentioned in map file.
i.e, My function address is 0x00473dbc in map fle, but it is diffrent, if we print it in my program.
Hardware used is SAMv70 from Microchip.
From Map file address of the function "VhicDebugUartInit" is "0x00473dbc"
.ARM.exidx.text.VhicDebugUartInit 0x00473dbc 0x10 obj/gnu/release/ccuvhicdebug.o 0x8 (size before relaxing)
If we print the address of the function in the program, it is "0x00473DCB"
printf("VhicDebugUartInit at 0x%x", VhicDebugUartInit);
If you look at it in a debugger, what address do you see ?
To print a pointer, shouldn't you be using %p ?