Skip to main content
  • Products
  • Software evaluation
  • Downloads
  • Free utilities
  • Purchase
  • Silicon Vendors
  • Support
  • About us
  • Blog
  • Forum
  • Search
  • Jobs
  • Newsletter
  • Blog
  • Contact
  • Shop
  • Embedded Studio
  • Code Analysis

    Code analysis

    Analyze code and resource usage before debugging

    • Analyze memory and stack usage
    • Identify potential issues with static code analysis
    • Explore code structure and symbols
    Buy now Downloads Documentation
    SEGGER Embedded Studio
    1. 1.Overview
    2. 2.Memory Usage
    3. 3.Code Outline
    4. 4.Source Navigator
    5. 5.Symbol Browser
    6. 6.Stack Usage
    7. 7.Static Code Analysis
    8. 8.External Analysis Tools

    Overview

    Embedded Studio provides a range of tools for analyzing applications before debugging. Developers can examine memory and stack usage, explore code structures and symbols, and identify potential issues through static code analysis.

    These tools provide insight into the compiled application, helping developers understand resource requirements, navigate complex projects, and detect potential problems early in the development process.


    Memory Usage

    embedded studio output memory usage

    After a successful build, the log window displays the application's memory usage, providing an immediate overview of how much flash and RAM it occupies.

    For a more detailed analysis, the Memory Usage window shows how code and data sections are distributed across the available memory regions. Memory types and sizes are determined by the target device and project settings. The window displays all configured memory regions, including internal flash, RAM, and external memory.


    Code Outline

    embedded studio code outline structure

    Navigating large source files can be challenging, especially when searching for specific functions or symbols. The Code Outline window provides a structured overview of the source code, making it easier to locate and navigate between elements.

    Includes and defines can be grouped, while complex elements can be expanded to display their members. A single click takes you directly to the selected element in the source code.


    Source Navigator

    embedded studio source navigator

    Even in well-structured projects, locating specific functions or symbols can be challenging. The Source Navigator provides quick access to functions, typedefs, and variables, allowing developers to jump directly to their definitions with a single click.

    For even faster navigation, the Find Symbol (Alt+Y) and Find Method (Ctrl+M) commands provide quick access to specific code elements.


    Symbol Browser

    embedded studio symbol browser

    The Symbol Browser provides detailed insight into the compiled application, showing the memory usage and location of individual symbols on the target device. Symbols can be grouped by source file, section, or type, making it easier to analyze memory allocation and identify resource-intensive components.


    Stack Usage

    embedded studio stack usage

    Determining how much stack memory an application or individual task requires can be challenging. The Stack Usage window performs static stack analysis to estimate stack requirements for individual functions and call paths, helping developers identify potential stack usage issues.


    Static Code Analysis

    embedded studio static code analysis

    Compilers can detect potential issues, such as uninitialized variables, and report them as warnings. Static code analysis goes a step further by identifying additional issues that may affect code quality, reliability, or performance.

    Analysis results are displayed in the log window, allowing developers to navigate directly to the relevant source code.

    Find out more about the static code analyzer on our Wiki page.


    External Analysis Tools

    embedded studio external tools

    Embedded Studio supports the integration of external tools for additional code analysis, such as checking source code for compliance with MISRA guidelines. Developers can configure custom commands and execute them on individual project items.

    Tool output is displayed in the log window. For supported tools, such as Lint, developers can navigate directly to the source lines associated with reported issues.

    • User manual
    • Online documentation
    • List of downloads
    • Release notes
    • Update notification
    • Pricing
    • Support
    • Silicon vendor resources

    Headquarters

    SEGGER Microcontroller GmbH

    Ecolab-Allee 5
    40789 Monheim am Rhein, Germany
    info@segger.com
    Tel.: +49-2173-99312-0
    Fax: +49-2173-99312-28

    Locations

    USA: SEGGER Microcontroller Systems LLC

    Boston area
    101 Suffolk Lane
    Gardner, MA 01440, USA
    us-east@segger.com
    Tel.: +1-978-874-0299
    Fax: +1-978-874-0599

    Silicon Valley
    Milpitas, CA 95035, USA
    us-west@segger.com
    Tel.: +1-408-767-4068

    China: SEGGER Microcontroller China Co., Ltd.

    Room 218, Block A, Dahongqiaoguoji
    No. 133 Xiulian Road
    Minhang District, Shanghai 201199, China
    china@segger.com
    Tel.: +86-133-619-907-60

    ISO 9001
    ISO 27001
    First-class embedded software tools since 1992
    Designed and made in Germany
    • Imprint
    • Disclaimer
    • Code of Conduct
    • Privacy Policy
    © 2026 SEGGER - All rights reserved.