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/AM3352: Why disassembly window cannot display the line number?

Part Number: AM3352


Tool/software: Code Composer Studio

At this point, line number shown:

After entering function "IntMasterIRQDisable", line number disappear:

It bothers me, because I cannot ensure that if this source file is actually the file being compiled into object file.

  • It is a little hard to tell because of the dark color theme, but I am assuming you have the "show source" button enabled for both screenshots. If so, it could be a number of issues such as incorrect source code correlation, missing debug symbols, optimization, etc. Without a test case, I can't be certain.

    Andy Lin94 said:
    It bothers me, because I cannot ensure that if this source file is actually the file being compiled into object file.

    Use the modules view to confirm which file is being used:

    http://dev.ti.com/tirex/#/?link=Development%20Tools%2FIntegrated%20Development%20Environments%2FCode%20Composer%20Studio%2FDebug%2FDocuments%2FFeature%20Overviews%2FBrowse%20loaded%20debug%20symbols%20with%20the%20Modules%20view%20(YouTube)

    Thanks

    ki

  • Hi.

    1. What is the show source button?

    2. My modules view is much more different from the video. Here is the snapshot

    From the video you offer, the Globals list shows all of identifiers, however, in my case, Globals list shows something unrelated with identifier.

    3. Here is the test case:

    0842.main.pp.txt

    Building file: "../MCU/main.c"
    Invoking: ARM Compiler
    "C:/ti/ccsv8/tools/compiler/ti-cgt-arm_5.2.5/bin/armcl" -mv7A8 --code_state=32 --float_support=VFPv3 --abi=eabi -me --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_5.2.5/include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/uCOS Include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Source Code/Include/armv7a/am335x" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/NandFlash Include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/lwip Include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/FatSystem" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/MP3" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/OSIP" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/mmcsdlib" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/RTP" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/Lib_DSP_Math" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/Lib_DSP_Function" --include_path="C:/ti/ccsv8/ATEIS AM335X/Include/Lib_DSP_Filter" --include_path="C:/ti/ccsv8/ATEIS AM335X/Source Code/Include" --include_path="C:/ti/ccsv8/ATEIS AM335X/Source Code/Include/hw" --include_path="C:/ti/ccsv8/ATEIS AM335X/Source Code/Include/armv7a" -g --preproc_with_comment --preproc_with_compile --define=am3352 --define=ccs --define=AM335X --define=_FUNCTION_PERFORMANCE_xx --diag_warning=225 --diag_wrap=off --display_error_number --unaligned_access=on --neon --enum_type=int --wchar_t=16 -k --c_src_interlist --obj_directory="MCU" "../MCU/main.c"
    "../MCU/main.c", line 27: warning #515-D: a value of type "char *" cannot be assigned to an entity of type "uint32_t *"
    "../MCU/main.c", line 28: warning #179-D: variable "result" was declared but never referenced
    Finished building: "../MCU/main.c"

  • Andy Lin94 said:
    1. What is the show source button?

    Andy Lin94 said:
    From the video you offer, the Globals list shows all of identifiers, however, in my case, Globals list shows something unrelated with identifier.

    The contents in the modules views is dependent on the loaded symbols. If things are missing or different, then it is because the symbolic information

    The source code correlation you are having issues with is interrupt.c. Does that file appear in the Modules view? If so, what happens when you double-click on it?

    Andy Lin94 said:
    3. Here is the test case:

    This type of test case is helpful for compiler bugs, but not for debugger issues. 

    Thanks

    ki

  • Hi.

    After updating to version 8.3.0.00009, disassembly window showed corresponding line number.

    Because correct corresponding line number does not indicate that this specific interrupt.c is the correct source file, I set a test to verify it.

    For interrupt.c, I add a new line, save it, and compile project again.(note: This interrupt.c is not visibly within the project, because I cannot find it within the project)

    The result is disassembly window displaying the original one, not the newer one.

    Q1: Can this test prove that this specific interrupt.c file doesn't belong to this project?

    The source code correlation you are having issues with is interrupt.c. Does that file appear in the Modules view? If so, what happens when you double-click on it?

    Yes, this specific interrupt.c indeed appears in the modules view. Also, the relative path is the same as of this specific interrupt.c.

    Q2: If this specific interrupt.c truly belonged to this project, why rebuilding the project would not make an affect?

  • Andy Lin94 said:
    After updating to version 8.3.0.00009, disassembly window showed corresponding line number.

    That is good. It could be that there was a some bug in the prior version you were using.

    Andy Lin94 said:

    For interrupt.c, I add a new line, save it, and compile project again.(note: This interrupt.c is not visibly within the project, because I cannot find it within the project)

    The result is disassembly window displaying the original one, not the newer one.

    This is likely because interrupt.c is being referenced from a library. Assuming your project only includes the library, then rebuilding the project will not rebuild the library. Hence your changes you made to interrupt.c would not get picked up. To get those changes picked up, you would need to specifically rebuild the library.

    Andy Lin94 said:
    Q1: Can this test prove that this specific interrupt.c file doesn't belong to this project?

    No, see above

    Andy Lin94 said:
    Q2: If this specific interrupt.c truly belonged to this project, why rebuilding the project would not make an affect?

    See above.

  • Thanks! Very clearly