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.

Getting warning in sys_startup.asm file

Hi,

we are getting below warning in sys_startup.asm file while build our stack.

warning: option --symdebug:dwarf overrides preceding option --symdebug:none

please give the solution to resolve above warning

COMPILER : CLANG

  • Hello Vigneshwaran,  

    Please provide more information.  What processor are you using?

    Thank you,

    ~Leonard  

  • AM263x Dual Core Arm Cortex-R5F

    ccs version is 11.1

  • Hi Vigneshwaran,

    Which version of the MCU+ SDK you are using and which CCS project or library building cause the above warning?

    Best regards,

    Ming 

  • we are not using mcu+sdk, we are developing AUTOSAR MCAL code for all the drivers of AM263 variant.

    we have identified this warning, while building our AM263 stack.

  • Please show the full invocation of the compiler which causes this diagnostic ...

    warning: option --symdebug:dwarf overrides preceding option --symdebug:none

    Please copy-and-paste the text, and do not use a screen shot.

    Thanks and regards,

    -George

  • Below marked color's, we are getting warning.

    # Archiving am263:r5f:debug:port
    #
    # Making am263:r5f:debug:app_utils...
    # D:/Ti_Git/mcal_sitara_mcu/AM263_00.09.00/mcal/binary/examples/Utils/obj/am263/r5f/debug/sys_core.oer5f Compiling am263:r5f:debug:app_utils: ./CLANG/sys_core.asm
    warning: option --symdebug:dwarf overrides preceding option --symdebug:none
    # Compiling am263:r5f:debug:app_utils: app_utils.c
    # Compiling am263:r5f:debug:app_utils: app_utils_uart.c
    # Compiling am263:r5f:debug:app_utils: sci.c
    # Compiling am263:r5f:debug:app_utils: trace.c
    # Compiling am263:r5f:debug:app_utils: esm.c
    # Compiling am263:r5f:debug:app_utils: sys_vim.c
    # Compiling am263:r5f:debug:app_utils: crc.c
    #
    # Archiving am263:r5f:debug:app_utils
    #
    # D:/Ti_Git/mcal_sitara_mcu/AM263_00.09.00/mcal/binary/fls_app/obj/am263/r5f/debug/sys_startup.oer5f D:/Ti_Git/mcal_sitara_mcu/AM263_00.09.00/mcal/binary/fls_app/obj/am263/r5f/debug/sys_intvecs.oer5f Compiling am263:r5f:debug:fls_app: ../Utils/CLANG/sys_startup.asm
    warning: option --symdebug:dwarf overrides preceding option --symdebug:none
    # D:/Ti_Git/mcal_sitara_mcu/AM263_00.09.00/mcal/binary/fls_app/obj/am263/r5f/debug/sys_startup.oer5f D:/Ti_Git/mcal_sitara_mcu/AM263_00.09.00/mcal/binary/fls_app/obj/am263/r5f/debug/sys_intvecs.oer5f Compiling am263:r5f:debug:fls_app: ../Utils/CLANG/sys_intvecs.asm
    warning: option --symdebug:dwarf overrides preceding option --symdebug:none

  • I think you need to remove the build option --symdebug:none.  To be certain, I need to see more detail.  I need to see the complete tiarmclang command, including all the build options and filenames, exactly as tiarmclang sees it.  Please copy-and-paste the text, and do not use a screen shot.

    Thanks and regards,

    -George

  • Please find below clang compiler make file.

    #*******************************************************************************
    # *
    # Copyright (c) 2022 Texas Instruments Incorporated - http://www.ti.com/ *
    # ALL RIGHTS RESERVED *
    # *
    #*******************************************************************************

    # Filename: rules_r5f_CLANG.mk
    #
    # Make rules for R5 - This file has all the common rules and defines required
    # for Cortex-R5 ISA
    #
    # This file needs to change when:
    # 1. Code generation tool chain changes
    # 2. Internal switches (which are normally not touched) has to change
    # 3. XDC specific switches change
    # 4. a rule common for R5 ISA has to be added or modified

    CGT_ISA = R5
    CGT_EXT = r5f
    CGT_PATH = $(TOOLCHAIN_PATH_R5)

    # Set compiler/archiver/linker commands and include paths
    CODEGEN_INCLUDE = $(TOOLCHAIN_PATH_$(CGT_ISA))/include

    CC = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armcl
    AR = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armar
    LNK = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armcl
    STRP = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armstrip
    SIZE = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armofd

    # Derive a part of RTS Library name based on ENDIAN: little/big
    ifeq ($(ENDIAN),little)
    RTSLIB_ENDIAN = le
    else
    RTSLIB_ENDIAN = be
    endif

    # Derive compiler switch and part of RTS Library name based on FORMAT: COFF/ELF
    ifeq ($(FORMAT),ELF)
    CSWITCH_FORMAT = eabi
    RTSLIB_FORMAT = eabi
    endif

    #LNKFLAGS_INTERNAL_COMMON += -O4
    #LNKFLAGS_INTERNAL_COMMON += --run_linker


    # Internal CFLAGS - normally doesn't change
    # TODO: Check --fp_mode=strict, --gcc
    CFLAGS_INTERNAL = -c -qq -pdsw225 --endian=$(ENDIAN) -mv7$(CGT_ISA) --fp_mode=strict --abi=$(CSWITCH_FORMAT) -eo.$(OBJEXT) -ea.$(ASMEXT) --symdebug:dwarf --embed_inline_assembly --gcc
    ifeq ($(CGT_ISA),$(filter $(CGT_ISA), R5))
    CFLAGS_INTERNAL += --float_support=vfpv3d16
    # Enabling thumb2 mode
    CFLAGS_INTERNAL += --code_state=16
    else
    CFLAGS_INTERNAL += --float_support=vfplib
    endif
    ifeq ($(TREAT_WARNINGS_AS_ERROR), yes)
    CFLAGS_INTERNAL += --emit_warnings_as_errors
    LNKFLAGS_INTERNAL_COMMON += --emit_warnings_as_errors
    endif
    CFLAGS_DIROPTS = -fr=$(OBJDIR) -fs=$(OBJDIR)

    ifeq ($(SOCFAMILY),$(filter $(SOCFAMILY), AM263))
    CFLAGS_INTERNAL += -DAM263_PLATFORM
    endif


    # CFLAGS based on profile selected
    ifeq ($(PROFILE_$(CORE)), debug)
    LNKFLAGS_INTERNAL_PROFILE =
    CFLAGS_INTERNAL += -D_DEBUG_=1
    endif
    ifeq ($(PROFILE_$(CORE)), release)
    #LNKFLAGS_INTERNAL_PROFILE = --strict_compatibility=on
    LNKFLAGS_INTERNAL_PROFILE = -qq --diag_warning=225 --diag_suppress=23000 $(LNKFLAGS_GLOBAL_$(CORE))
    ifeq ($(CGT_ISA),$(filter $(CGT_ISA), R5))
    CFLAGS_INTERNAL += -ms -O4 -s --optimize_with_debug
    else
    CFLAGS_INTERNAL += -ms -op0 -os --inline_recursion_limit=20
    endif
    endif

    ifeq ($(JENKINS_TEST_AUTOMATION), TRUE)
    CFLAGS_INTERNAL += -DJENKINS_TEST_AUTOMATION
    endif

    # Following 'if...' block is for an application; to add a #define for each
    # component in the build. This is required to know - at compile time - which
    # components are on which core.
    ifndef MODULE_NAME
    # Derive list of all packages from each of the components needed by the app
    PKG_LIST_R5_LOCAL = $(foreach COMP,$(COMP_LIST_$(CORE)),$($(COMP)_PKG_LIST))

    # Defines for the app and cfg source code to know which components/packages
    # are included in the build for the local CORE...
    CFLAGS_APP_DEFINES = $(foreach PKG,$(PKG_LIST_R5_LOCAL),-D_LOCAL_$(PKG)_)
    CFLAGS_APP_DEFINES += $(foreach PKG,$(PKG_LIST_R5_LOCAL),-D_BUILD_$(PKG)_)

    # Defines for the app and cfg source code to know which components/packages
    # are included in the build for the remote CORE...
    CFLAGS_APP_DEFINES += $(foreach PKG,$(PKG_LIST_R5_REMOTE),-D_REMOTE_$(PKG)_)
    CFLAGS_APP_DEFINES += $(foreach PKG,$(PKG_LIST_R5_REMOTE),-D_BUILD_$(PKG)_)

    endif

    # Assemble CFLAGS from all other CFLAGS definitions
    _CFLAGS = $(CFLAGS_INTERNAL) $(CFLAGS_GLOBAL_$(CORE)) $(CFLAGS_LOCAL_COMMON) $(CFLAGS_LOCAL_$(CORE)) $(CFLAGS_LOCAL_$(PLATFORM)) $(CFLAGS_LOCAL_$(SOCFAMILY)) $(CFLAGS_LOCAL_$(SOC)) $(CFLAGS_APP_DEFINES) $(CFLAGS_COMP_COMMON) $(CFLAGS_GLOBAL_$(PLATFORM))

    # Decide the compile mode
    COMPILEMODE = -fc
    ifeq ($(CPLUSPLUS_BUILD), yes)
    COMPILEMODE = -fg
    endif

    # Object file creation
    # The first $(CC) generates the dependency make files for each of the objects
    # The second $(CC) compiles the source to generate object
    $(OBJ_PATHS): $(OBJDIR)/%.$(OBJEXT): %.c
    $(ECHO) \# Compiling $(PLATFORM):$(CORE):$(PROFILE_$(CORE)):$(APP_NAME)$(MODULE_NAME): $<
    $(CC) -ppd=$(DEPFILE).P $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) $(COMPILEMODE) $<
    $(CC) $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) $(COMPILEMODE) $<

    #TODO: Check ASMFLAGS if really required
    #ASMFLAGS = -g --code_state=16 --diag_warning=225 --display_error_number --diag_wrap=off \
    --gen_func_subsections=on --enum_type=packed --auto_inline=0 --small_enum
    #TODO: Check ASMFLAGS if really required
    ASMFLAGS = -me -g --code_state=16 --diag_warning=225

    # Object file creation
    $(OBJ_PATHS_ASM): $(OBJDIR)/%.$(OBJEXT): %.asm
    $(ECHO) \# $(OBJ_PATHS_ASM) Compiling $(PLATFORM):$(CORE):$(PROFILE_$(CORE)):$(APP_NAME)$(MODULE_NAME): $<
    $(CC) -ppd=$(DEPFILE).P $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fa $<
    $(CC) $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fa $<

    $(PACKAGE_PATHS): $(PACKAGEDIR)/%: %
    $(ECHO) \# Copying $(PACKAGE_NAME)/$($(MODULE_NAME)_RELPATH)/$<
    $(MKDIR) -p $(DEST_ROOT)/package/$(PACKAGE_SELECT)/$(PACKAGE_NAME)/$($(MODULE_NAME)_RELPATH)
    $(CP) --parents -rf $< $(DEST_ROOT)/package/$(PACKAGE_SELECT)/$(PACKAGE_NAME)/$($(MODULE_NAME)_RELPATH)

    # Archive flags - normally doesn't change
    ARFLAGS = rq

    # Archive/library file creation
    $(LIBDIR)/$(MODULE_NAME).$(LIBEXT) : $(OBJ_PATHS_ASM) $(OBJ_PATHS)
    $(ECHO) \#
    $(ECHO) \# Archiving $(PLATFORM):$(CORE):$(PROFILE_$(CORE)):$(MODULE_NAME)
    $(ECHO) \#
    $(AR) $(ARFLAGS) $@ $(OBJ_PATHS_ASM) $(OBJ_PATHS)

    # Linker options and rules
    #LNKFLAGS_PRELINK_FLAGS = --silicon_version=7R4
    #ifeq ($(PROFILE_$(CORE)), release)
    # LNKFLAGS_PRELINK_FLAGS += --abi=$(CSWITCH_FORMAT)
    #endif
    #LNKFLAGS_INTERNAL_COMMON += --emit_warnings_as_errors --diag_error=10247 --diag_error=10423 --display_error_number -w -q -u _c_int00 -c --diag_suppress=10068 -z -a --rom_model --warn_sections --reread_libs --unused_section_elimination=on \
    --compress_dwarf=on --copy_compression=rle --cinit_compression=rle --reread_libs --disable_auto_rts\
    --generate_dead_funcs_list=$(BUILD_DIR)\feedback.txt

    # Linker options and rules
    # --diag_suppress=10068 suppresses warnings about sections missing in linker file
    LNKFLAGS_INTERNAL_COMMON += -w -q -u _c_int00 -c --diag_suppress=10068
    ifeq ($(CGT_ISA), R5)
    LNKFLAGS_INTERNAL_COMMON += -mv7R5
    #--diag_suppress=10063 supresses 'warning: entry point other than _c_int00 specified'
    LNKFLAGS_INTERNAL_COMMON += --diag_suppress=10063
    endif

    # Assemble Linker flags from all other LNKFLAGS definitions
    _LNKFLAGS = $(LNKFLAGS_PRELINK_FLAGS) -z $(LNKFLAGS_INTERNAL_COMMON) $(MCAL_LNKFLAGS) $(LNKFLAGS_INTERNAL_PROFILE) $(LNKFLAGS_GLOBAL_$(CORE)) $(LNKFLAGS_LOCAL_COMMON) $(LNKFLAGS_LOCAL_$(CORE))

    # Path of the RTS library - normally doesn't change for a given tool-chain
    #Let the linker choose the required library
    RTSLIB_PATH = $(TOOLCHAIN_PATH_R5)/lib/libc.a
    LIB_PATHS += $(RTSLIB_PATH)

    LNK_LIBS = $(addprefix -l,$(LIB_PATHS))
    LNK_LIBS += $(addprefix -l,$(EXT_LIB_PATHS))

    # Linker - to create executable file
    ifeq ($(LOCAL_APP_NAME),)
    EXE_NAME = $(BINDIR)/$(APP_NAME)_$(CORE)_$(PROFILE_$(CORE)).$(EXEEXT)
    else
    ifeq ($(PROFILE_$(CORE)),prod_release)
    EXE_NAME = $(BINDIR)/$(LOCAL_APP_NAME).$(EXEEXT)
    else
    EXE_NAME = $(BINDIR)/$(LOCAL_APP_NAME)_$(PROFILE_$(CORE)).$(EXEEXT)
    endif
    endif

    $(EXE_NAME) : $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LIB_PATHS) $(LNKCMD_FILE)
    $(ECHO) \# Linking into $(EXE_NAME)...
    $(ECHO) \#
    $(LNK) $(_LNKFLAGS) $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LNKCMD_FILE) -o $@ -m $@.map $(LNK_LIBS)
    $(ECHO) \#
    $(ECHO) \# $@ created.
    $(ECHO) \#

    # Include dependency make files that were generated by $(CC)
    -include $(SRCS:%.c=$(DEPDIR)/%.P)

    # Nothing beyond this point

  • This is not the complete makefile. It is a file that is included by the main makefile.  I don't see --symdebug:none in it.  So that option must be added elsewhere.  You need to work out where that happens and remove it. 

    Because your first post says ...

    COMPILER : CLANG

    ... I thought you use tiarmclang.  However, you use ...

    CC = $(TOOLCHAIN_PATH_$(CGT_ISA))/bin/armcl

    ... which is the proprietary TI Arm compiler.  As far as this specific issue is concerned, it makes no difference.  But I thought you should know.

    Thanks and regards,

    -George