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

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

相关推荐
小智RE0-走在路上17 小时前
Python学习笔记(8) --函数的多返回值,不同传参,匿名函数
笔记·python·学习
摇滚侠17 小时前
Redis 零基础到进阶,Redis 哨兵监控,笔记63-73
数据库·redis·笔记
老王熬夜敲代码17 小时前
网络中数据传输的具体过程
linux·网络·笔记
charlie11451419118 小时前
现代C++嵌入式教程:C++98基础特性:从C到C++的演进(1)
c语言·开发语言·c++·笔记·学习·教程
汤愈韬18 小时前
TK_网络基础和常见攻击(笔记)
网络·笔记
nnsix19 小时前
QFramework学习笔记
笔记·学习
XFF不秃头19 小时前
力扣刷题笔记-全排列
c++·笔记·算法·leetcode
لا معنى له20 小时前
目标分割介绍及最新模型----学习笔记
人工智能·笔记·深度学习·学习·机器学习·计算机视觉
阿凡达蘑菇灯21 小时前
pycharm 中 终端环境与解释器环境不一致 解决办法
ide·python·pycharm
深蓝海拓21 小时前
PySide6从0开始学习的笔记(十) 样式表(QSS)
笔记·python·qt·学习·pyqt