risc-v查看汇编代码的几种方式 (qq.com)
本文转自公众号欢迎关注
前言很多时候需要对照c和汇编进行分析和调试,所以需要查阅汇编代码,以下分享几种方式。
使用网页可以进入如下网站输入c查看对应的汇编,右侧可以选择编译器版本
https://godbolt.org/
使用工具推荐ripes项目
参考https://mp.weixin.qq.com/s/tcg7ycymsdzuiqmwl-e6bq
使用gcc可以用gcc生成汇编代码,或者从目标文件,可执行文件中dump出汇编指令
比如有源码main.c
int add(int a,int b){return a+b;}int main(void){int a=0;int b=1;int c=1;a=add(b,c);return 0;}编译生成汇编
riscv64-unknown-elf-gcc -s -o mian.s main.c
main.s如下
.file main.c.option nopic.attribute arch, rv64i2p0_m2p0_a2p0_f2p0_d2p0_c2p0.attribute unaligned_access, 0.attribute stack_align, 16.text.align 1.globl add.type add, @functionadd:addi sp,sp,-32sd s0,24(sp)addi s0,sp,32mv a5,a0mv a4,a1sw a5,-20(s0)mv a5,a4sw a5,-24(s0)lw a4,-20(s0)lw a5,-24(s0)addw a5,a4,a5sext.w a5,a5mv a0,a5ld s0,24(sp)addi sp,sp,32jr ra.size add, .-add.align 1.globl main.type main, @functionmain:addi sp,sp,-32sd ra,24(sp)sd s0,16(sp)addi s0,sp,32sw zero,-20(s0)li a5,1sw a5,-24(s0)li a5,1sw a5,-28(s0)lw a4,-28(s0)lw a5,-24(s0)mv a1,a4mv a0,a5call addmv a5,a0sw a5,-20(s0)li a5,0mv a0,a5ld ra,24(sp)ld s0,16(sp)addi sp,sp,32jr ra.size main, .-main.ident gcc: (gnu) 10.2.0目标文件或者可执行文件导出汇编riscv64-unknown-elf-objdump -s -d main.o > main.o.txtriscv64-unknown-elf-objdump -s -d main > main.txt main: file format elf64-littleriscv contents of section .text: 100b0 93070000 91c71705 00001305 052f05a6 ............./.. 100c0 82809721 00009381 e1be1385 01f61386 ...!............ 100d0 81f9098e 8145ef00 40161705 00001305 .....e..@....... 100e0 453019c5 17050000 1305252c ef00202f e0........%,.. / 100f0 ef00000e 02452c00 0146ef00 e00755a8 .....e,..f....u.......使用gdb如果使用了gdb进行仿真,可以直接进行汇编级别调试
使用如下指令进入c和汇编对照布局
layout split
采用 6.25mm x 9mm BGA 封装的 42VIN、3.5A µModule 稳压器 适用于工业系统、工厂自动化和航空电子产品
磷酸铁锂电池化学反应方程式_磷酸铁锂电池工作温度
联想小新Pro14全新配置即将上线
电热水壶保温原理及电路分析
LED灯与白炽灯展开拔河赛 LED灯要胜出还任重道远?
RISC-V查看汇编代码的几种方式
我国固态电池全球专利申请量近5年增速全球第一
炫到极点:DIY达人废品组装变形金刚
2023年外国人眼中最值得投资的10家中国传感器初创公司
三星押注OLED技术 或将并购德面板厂
高通与小米、OPPO和vivo达成合作,国产手机首发高通处理器指日可待
Bittrex加密货币交易平台上的资金提现延迟,原因不详
电子镇流器取代电感镇流器_优势何在
华纳传媒的一次胜利!HBO明年将撤出亚马逊
小米6最新消息:这就是所谓的四曲面设计?小米6最新真机照曝光
人工智能会取代软件测试工程师吗
满足哪些要求才能使控制器达到量产要求呢
思迪信息模拟交易系统软件V3.0.0通过鲲鹏Validated认证
手机拍照功能_从11万到4000万像素的进化
为什么AI、机器学习将在2017年成为主流