Why the address of fuction printed is not same as the one mentioned in map file

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.

    

Parents
  • 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);

Reply
  • 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);

Children
More questions in this forum