ARM base instruction -- b.cs

B

Branch causes an unconditional branch to a label at a PC-relative offset, with a hint that this is not a subroutine call or return.

在PC相对偏移处对标签进行无条件分支,并提示这不是子程序调用或返回。

操作码 助记符 标志 含义

0x2 0010 CS/HS C = 1 无符号数大于或等于

402c88: f9401fe2 ldr x2, [sp, #56] // x2="%s/%d/task/%d/stat"

402c8c: 2a1c03e5 mov w5, w28 // w5=w28=tid

402c90: f94047e1 ldr x1, [sp, #136] // x1=len

402c94: 2a1303e4 mov w4, w19 // w4=w19=pid

402c98: aa1a03e3 mov x3, x26 // x3=x26="/proc"

402c9c: 97fffb91 bl 401ae0 <snprintf@plt>

int nbytes = snprintf(path, len, "%s/%d/task/%d/stat", "/proc", pid, tid);

402ca0: b94013e1 ldr w1, [sp, #16] // w1 = len

402ca4: 6b01001f cmp w0, w1 // w0 = nbytes

402ca8: 54000a02 b.cs 402de8 <ferror@plt+0xf08> // b.hs, b.nlast

if (nbytes < 0 || nbytes >= len)

perror("get_threadname: snprintf");

相关推荐
代码改变世界ctw1 天前
ARM汇编编程(AArch64架构)课程 - 第5章函数调用规范
汇编·arm开发·架构
liulilittle2 天前
C/C++ inline-hook(x86)高级函数内联钩子
c语言·开发语言·汇编·c++·hook·底层·钩子
代码改变世界ctw2 天前
ARM汇编编程(AArch64架构)课程 - 第8章:控制流与循环
汇编·arm开发
Jacen.L2 天前
【汇编逆向系列】九、函数传参之结构体 - SHL、SHR指令,小型结构体参数和返回值
汇编
2401_861615283 天前
跨平台的ARM 和 x86 Docker 镜像:汇编语言实验环境搭建
linux·汇编·ubuntu·docker·容器
大P哥阿豪3 天前
Go defer(二):从汇编的角度理解延迟调用的实现
开发语言·汇编·后端·golang
花小璇学linux3 天前
imx6ull-裸机学习实验1——汇编LED灯实验
linux·汇编·imx6ull·arm裸机开发
无小道3 天前
c++-引用(包括完美转发,移动构造,万能引用)
c语言·开发语言·汇编·c++
liulilittle5 天前
C++ i386/AMD64平台汇编指令对齐长度获取实现
c语言·开发语言·汇编·c++
工业互联网专业5 天前
汇编与接口技术:8259中断实验
汇编·单片机·嵌入式硬件·8259中断实验