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.

TMS320C6657: linker error #17003-D relocation to symbol overflowed

Part Number: TMS320C6657

Hello,

On an existing design (compiler 8.3.2), I have 12 similar error

warning #17003-D: relocation to symbol "$C$L308" overflowed; the 31-bit relocated address 0x26d37e00 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x0000008c, section = ".clean:.tinyxml_text")

I don't understand why I have these kind of error because trampoline calls are actived (I have [349 trampolines] [5096 trampoline calls] in the map file)

Regards,

David

  • Same problem with compiler 8.3.12.

    What is the section .clean ? It is not mentionned in SPRUI04D.

  • David,

    Would you please give details like

    1. While building what packages, you came across this error?

    Is it SDK or PDK of processor-SDK 6.3 of C6657?

    --

    So that we will try to reproduce it from our end.

    Regards

    Shankari G

  • Hello,

    We do not use TI SDK. How can I send you some code (asm + map file) in order you can analyse ?

    Regards,

    David

  • Ok, David,

    I have notified the compiler experts.

    Thanks for your patience until they reply here.

    Regards

    Shankari G

  • To get a better understanding of the relocation overflow warning diagnostic, please visit this page.  

    In this specific case, I'm not sure of the cause.  Please build the file tinyxmlparser.c again, but add the build option --asm_listing.  This causes the assembler part of the compiler to create a listing file.  This listing file is named tinyxmlparser.lst.  Please add the file extension .txt to it to form the file name tinyxmlparser.lst.txt.  Attach it to your next post.

    Thanks and regards,

    -George

  • Hello,

    Here are some filestinyxmlparser.asm.txtlinker.map.txt

    Building target: "ST4539XL_release_EVM_core0.out"
    Invoking: C6000 Linker
    "C:/MOP/TEXAS/c6000_8.3.12/bin/cl6x" --cmd_file="C:\depot\salamandre_int/TransceiverResource/Projects/Env/algo_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int\OE/env/windows/ccs/c6x/common/oe_c6x_rtos_ccflags.cfg" --cmd_file="C:\depot\salamandre_int\OE/env/windows/ccs/common/oe_mccm_orbless_ccflags.cfg" --cmd_file="C:\depot\salamandre_int\OE/env/windows/ccs/common/oe_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/tools_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/technical_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/functional_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/bsp_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/ut_support_common_ccflags.cfg" --cmd_file="C:\depot\salamandre_int/PF/salamandre/evm/env/define_common_ccflags.cfg"  -mv6600 --abi=eabi -O2 --define=_NEW --define=CF_RTEV_LOG_CPP --define=TEST_XL --symdebug:none --diag_warning=225 --diag_wrap=off --display_error_number -k --asm_listing --c_src_interlist -z -m"ST4539XL_release_EVM_core0.map" -i"C:/MOP/TEXAS/c6000_8.3.12/lib" -i"C:/depot/salamandre_int/OE/libs/C6x/6600/release" -i"C:/MOP/TEXAS/c6000_8.3.12/include" -i"C:/depot/salamandre_int/PF/salamandre/evm/functional/tests/UnitaryTests/ST4539XL/c6x/v9.0.1" --reread_libs --diag_wrap=off --display_error_number --warn_sections --xml_link_info="C:/depot/salamandre_int/PF/salamandre/evm/functional/tests/UnitaryTests/ST4539XL/c6x/v9.0.1/release_EVM_core0/ST4539XL_evm.xml" --trampolines=on --rom_model -o "ST4539XL_release_EVM_core0.out" "./CTests_ST4539XL_ReadConfiguration.obj" "./Test_ST4539XL_Burst.obj" "./Test_ST4539XL_Burst_FrameProcessing.obj" "./Test_ST4539XL_Burst_TXRX.obj" "./Test_ST4539XL_Redondance_Freq.obj" "./Test_ST4539XL_Synchro.obj" "./Test_ST4539XL_Tools.obj" "./Tests_ST4539XL.obj" "./main.obj" "./CppUnitLite/Failure.obj" "./CppUnitLite/SimpleString.obj" "./CppUnitLite/Test.obj" "./CppUnitLite/TestRegistry.obj" "./CppUnitLite/TestResult.obj" "./DataGenerator/PseudoRandomDataGenerator.obj" "./DataManager/DataManager.obj" "./DataManager/StateDataManagerDefault.obj" "./DataManager/StateDataManagerFrameProcessing.obj" "./MD5/ToolsMD5.obj" "./MD5/md5.obj" "./SamplesManager/SamplesManager.obj" "./SamplesManager/StateSamplesManagerDefault.obj" "./SamplesManager/StateSamplesManagerSynchro.obj" "./SamplesManager/StateSamplesManagerTxRxSimultaneous.obj" "./common/src/UT_tools.obj" "./common/src/oe_init_test.obj" "./stackTraces/stackTraces.obj" "./tinyxml/tinystr.obj" "./tinyxml/tinyxml.obj" "./tinyxml/tinyxmlerror.obj" "./tinyxml/tinyxmlparser.obj" "C:/depot/salamandre_int/PF/salamandre/evm/bsp/tests/common/targets/evm/evm_st4539xl_core0.cmd"  -l"C:/depot/salamandre_int/OE/env/windows/ccs/common/oe_mccm_orbless_c6x_ucosii_release_little_ldflags.cfg" -l"C:/depot/salamandre_int/PF/salamandre/evm/env/evm_bsp_release_little_ldflags.cfg" -l"C:/depot/salamandre_int/PF/salamandre/evm/env/salamandre_core0_rtev_perf_srs_little_ldflags.cfg" -l"C:/depot/salamandre_int/TransceiverResource/Projects/Env/algoRx_rtev_perf_srs_little_ldflags.cfg" -l"C:/MOP/TEXAS/c6000_8.3.12/lib/rts6600_elf_eh.lib" 
    <Linking>
    warning #17003-D: relocation to symbol "$C$L69" overflowed; the 15-bit relocated address 0xcdbb is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000034, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L118" overflowed; the 15-bit relocated address 0xcec0 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x000000c8, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L168" overflowed; the 15-bit relocated address 0xcfdc is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000110, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L168" overflowed; the 15-bit relocated address 0xcfd4 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000124, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L168" overflowed; the 15-bit relocated address 0xcfd4 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000138, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L221" overflowed; the 15-bit relocated address 0xd0db is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000184, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L221" overflowed; the 15-bit relocated address 0xd0db is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./Tests_ST4539XL.obj", offset = 0x00000198, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L32" overflowed; the 15-bit relocated address 0xd48e is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./CppUnitLite/TestResult.obj", offset = 0x0000002c, section = ".clean:.text")
    warning #17003-D: relocation to symbol "$C$L86" overflowed; the 16-bit relocated address 0xb12e is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x00000008, section = ".clean:.tinyxml_text")
    warning #17003-D: relocation to symbol "$C$L86" overflowed; the 16-bit relocated address 0xb12e is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x00000014, section = ".clean:.tinyxml_text")
    warning #17003-D: relocation to symbol "$C$L86" overflowed; the 16-bit relocated address 0xb126 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x00000020, section = ".clean:.tinyxml_text")
    warning #17003-D: relocation to symbol "$C$L86" overflowed; the 16-bit relocated address 0xb126 is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x00000038, section = ".clean:.tinyxml_text")
    warning #17003-D: relocation to symbol "$C$L308" overflowed; the 16-bit relocated address 0xb98e is too large to encode in the 12-bit signed PC-Relative field (type = 'R_C6000_PCR_S12' (5), file = "./tinyxml/tinyxmlparser.obj", offset = 0x0000008c, section = ".clean:.tinyxml_text")
    warning #10015-D: output file "ST4539XL_release_EVM_core0.out" cannot be loaded and run on a target system
    Finished building target: "ST4539XL_release_EVM_core0.out"
     
    
    **** Build Finished ****

  • Thank you for the files.  Unfortunately, I still do not understand why the relocation overflow occurs.  For the source file tinyxmlparser.cpp, please follow the directions in the article How to Submit a Compiler Test Case.

    Thanks and regards,

    -George