GCC options: -ffunction-sections and -fdata-sections

C code:

 

struct person {
	int age;
	int no;
};

int plus_one(int no)
{
	return no + 1;
}

int minus_one(int no)
{
	return no - 1;
}

 

Run 'gcc -S -ffunction-sections -fdata-sections' produce:

 

	.file	"sec.c"
	.section	.text.plus_one,"ax",@progbits
.globl plus_one
	.type	plus_one, @function
plus_one:
	pushl	%ebp
	movl	%esp, %ebp
	movl	8(%ebp), %eax
	addl	$1, %eax
	popl	%ebp
	ret
	.size	plus_one, .-plus_one
	.section	.text.minus_one,"ax",@progbits
.globl minus_one
	.type	minus_one, @function
minus_one:
	pushl	%ebp
	movl	%esp, %ebp
	movl	8(%ebp), %eax
	subl	$1, %eax
	popl	%ebp
	ret
	.size	minus_one, .-minus_one
	.ident	"GCC: (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3"
	.section	.note.GNU-stack,"",@progbits
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值