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链接可以显示所有的内联函数

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

相关推荐
peijiping24 分钟前
Agent 工具执行:并行(parallel_tool_calls)和后台(run_in_background)到底有什么区别? (学习笔记)
笔记·学习·ai agent·claude code
Oll Correct26 分钟前
Adobe illustrator 案例四:吃豆人 (Pac-Man)图标绘制
笔记·ui·adobe·illustrator
LuminousCPP35 分钟前
单链表专题(四)-刷题复盘篇-LeetCode 138 随机链表复制|原地拷贝法突破复杂指针操作
数据结构·笔记·算法·leetcode·链表
萌新小白YXY1 小时前
SAE J1587/SAE J1708 协议笔记
笔记·单片机·嵌入式硬件
FlyWIHTSKY1 小时前
idea中集成claude功能
java·ide·人工智能·intellij-idea·cloudera
IT古董1 小时前
【MES学习笔记系列】MES 推荐书籍与资源
笔记·学习
一米阳光86611 小时前
软考(中级)软件设计师核心笔记(9)算法——时间复杂度与空间复杂度、查找算法、排序算法
笔记·算法·职场发展·软考·软件设计师·中级职称
米饭不加菜1 小时前
常用基本求导公式与法则(超详细推导版——上)
经验分享·笔记
weixin_404679311 小时前
godot + vscode ai开发
ide·vscode·编辑器·游戏引擎·godot
我一定会有钱2 小时前
vscode system下载安装
ide·vscode·编辑器