c++ to asm

cpp
int main(int argc, char** argv)
{
	return 0;
}
asm
dump:     file format elf32-littlearm


Disassembly of section .plt:

00008378 <.plt>:
    8378:	e52de004 	push	{lr}		; (str lr, [sp, #-4]!)
    837c:	e59fe004 	ldr	lr, [pc, #4]	; 8388 <_start-0x18>
    8380:	e08fe00e 	add	lr, pc, lr
    8384:	e5bef008 	ldr	pc, [lr, #8]!
    8388:	00000d40 	andeq	r0, r0, r0, asr #26
    838c:	e28fc600 	add	ip, pc, #0	; 0x0
    8390:	e28cca00 	add	ip, ip, #0	; 0x0
    8394:	e5bcfd40 	ldr	pc, [ip, #3392]!

Disassembly of section .text:

000083a0 <_start>:
    83a0:	e1a0000d 	mov	r0, sp
    83a4:	e3a01000 	mov	r1, #0	; 0x0
    83a8:	e28f2004 	add	r2, pc, #4	; 0x4
    83ac:	e28f3004 	add	r3, pc, #4	; 0x4
    83b0:	eafffff5 	b	838c <_start-0x14>
    83b4:	ea000006 	b	83d4 <main+0x4>
    83b8:	00009000 	.word	0x00009000
    83bc:	00009008 	.word	0x00009008
    83c0:	00009010 	.word	0x00009010
    83c4:	00009018 	.word	0x00009018
    83c8:	e1a00000 	.word	0xe1a00000
    83cc:	e1a00000 	.word	0xe1a00000

000083d0 <main>:
    83d0:	2000      	movs	r0, #0
    83d2:	4770      	bx	lr
    83d4:	f004 e51f 	blx	40ce14 <_stack+0x38ce14>
    83d8:	83d1      	strh	r1, [r2, #30]



c++

int add2(int i, int j)
{
    return i+j;
}
int add(int i, int j)
{
    return add2(i,j);
}
int main(int argc, char** argv)
{
	int m = add(1,2);
    return m;
}

asm

000083d0 <add2(int, int)>:
    83d0:	1808      	adds	r0, r1, r0
    83d2:	4770      	bx	lr

000083d4 <add(int, int)>:
    83d4:	b510      	push	{r4, lr}
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值