This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/CCSTUDIO: Load symbols offset does not take effect

Part Number: CCSTUDIO

Tool/software: Code Composer Studio

Hi CCS team,

I am trying to load the symbols in CCS, but after loading them, I see different addresses for the functions than the object file.

I tried to use the code offset, data offset to adjust the CCS interpreted addresses, but they do not take effect.

Attaching the object file I am trying to load onto A72 CPUs

binary.zip

PLease help

Regards,

NIkhil D

  • Hi Nikhil,
    yes i see some strange behavior with this symbol file also. What compiler was used to generate this file? Include the full version of the compiler.

    Thanks
    ki
  • Also provide the build options used.
  • From Get the compiler options from a compiled executable? found that GCC now seems to record the switched used in the object file by default.

    E.g. for the attached object file got:

    $ readelf -wi /tmp/hypervisor/hypervisor.o | grep DW_AT_producer
        <c>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1c51>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <2da8>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <56b7>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <7d77>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <8e14>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <b457>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <c2a6>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <d5a1>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <ee23>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <f749>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1013f>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <11789>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <12b33>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <141ac>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <146b4>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <14a15>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <14d76>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1525b>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <15767>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <15ac8>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <16e08>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1879c>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <19a53>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1acec>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1c109>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <1f4e7>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <208c7>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <225a6>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <24231>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <259fc>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <283f4>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <2bb10>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <2bca2>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <2da9b>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <30a22>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <32163>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <339f3>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl
        <34afb>   DW_AT_producer    : (indirect string, offset: 0x839): GNU C11 7.2.1 20171011 -mlittle-endian -march=armv8-a -mabi=lp64 -g -Os -fno-strict-aliasing -fno-pic -fno-common -fno-stack-protector -fno-builtin-ffsl

  • Hi Ki,

    I am using Linaro gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)

    THe options used for final linking is

    aarch64-linux-gnu-ld  -EL  -maarch64elf   --whole-archive -T /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/hypervisor.lds /home/nikhil/work/presi/privsdk/k
    s3-linux-integrated/jailhouse/hypervisor/arch/arm64/lib.a /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/setup.o /home/nikhil/work/presi/privsdk/ks3-linux-int
    egrated/jailhouse/hypervisor/printk.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/paging.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/h
    ypervisor/control.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/lib.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/mmio.o /hom
    e/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/pci.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/ivshmem.o /home/nikhil/work/presi/p
    rivsdk/ks3-linux-integrated/jailhouse/hypervisor/regmap.o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/uart.o /home/nikhil/work/presi/privsdk/ks3-linux-inte
    grated/jailhouse/hypervisor/uart-8250.o -o /home/nikhil/work/presi/privsdk/ks3-linux-integrated/jailhouse/hypervisor/hypervisor.o

    Regards,

    Nikhil D

  • Thanks. I filed a bug for this. Tracking ID: CCBT-2428