RISC-V IDE MRS2使用笔记(三):编译后函数调用分析

RISC-V IDE MRS2使用笔记(三):编译后函数调用分析

今天分享一个MRS2的实用功能:编译后函数调用分析。该功能不同于常见的大纲(Outline)功能,支持从多个维度显示工程内的函数调用关系:

  1. 工程维度:将工程内的所有源文件中的函数调用关系串联起来,形成完整的调用图。
  2. 文件维度:显示选中文件与其他文件中函数的调用关系
  3. 函数维度:以箭头的方式展示函数间的互相调用关系,悬浮显示函数具体信息

此功能适合用于在项目初期快速熟悉工程的大致结构,也适合于开发过程中分析工程整体代码关系,提高代码质量。

【使用方法】

在点击菜单栏上的Project按钮,勾选下方的"Show Funcion Call Analysis"(显示函数调用分析)选项

之后执行重新编译工程,会在代码编辑区右方自动显示分析结果页面。

【基本功能】

  • Files下拉框:选择文件,分析页面只显示目标文件中的函数调用关系,如果选择"All"选项,分析页面会显示整个工程内的函数调用关系
  • Functions下拉框:选择文件中的函数,分析页面会聚焦于选中的目标函数
  • Show Interrupt Functions复选框:分析页面中是否显示工程中的中断函数

同时该页面也自动显示函数统计信息如下:

  • Total number of non-interrupt functions:当前分析页面中的非中断函数数量
  • Total number of interrupt functions:当前工程中的中断函数数量
  • Total number of inline functions:当前工程中的内联函数数量

此外点击Total number of inline functions链接可以显示所有的内联函数

分析页面支持拖动放大和缩小,鼠标悬浮在函数节点处悬浮提示该函数的基本信息,包括文件位置、函数地址、函数大小等,点击函数节点可自动跳转到对应的源码处,方便迅速定位函数位置。

相关推荐
雷工笔记2 小时前
MES / WMS / AGV 交互时序图及生产管理模块界面设计清单
人工智能·笔记
Freak嵌入式2 小时前
MicroPython LVGL基础知识和概念:GUI 的扩展接口
ide·驱动开发·嵌入式·gui·lvgl·micropython·upypi
大邳草民2 小时前
Python 中 global 与 nonlocal 的语义与机制
开发语言·笔记·python
landuochong2003 小时前
claude-obsidian 再升级
人工智能·笔记·claudecode
CheerWWW3 小时前
C++学习笔记——线程、计时器、多维数组、排序
c++·笔记·学习
ljt27249606613 小时前
Compose笔记(七十六)--拍照预览
笔记·android jetpack
ZC跨境爬虫3 小时前
dankoe视频笔记:如何培养对自己喜欢之事的痴迷感
人工智能·笔记·搜索引擎
新手小新4 小时前
C#学习笔记1-在VS CODE部署C#开发环境
笔记·学习·c#
ZC跨境爬虫4 小时前
Dan koe视频笔记: 个人成长与目标设定的重要性
人工智能·笔记·搜索引擎
小陈的进阶之路5 小时前
Appium 自动化测试笔记
笔记·appium