C语言Keil5,keil C251 v5.57 uVision5开发工具

C语言Keil5在v5.57版本中改进了代码优化,现在能够移除未使用函数的共同代码块,从而减小程序体积。举例说明,FuncA和FuncB的共同代码以及FuncC和FuncD的共同代码在指定REMOVEUNUSED链接指令后会被正确删除,优化了代码效率。
摘要由CSDN通过智能技术生成

Corrected: L251 code optimization does not remove common blocks for unused functions. These code blocks remains inside the image. Example:

unsigned char a, b, c;

unsigned char darr [0x10];

void FuncA (void) {

darr[c] = darr[b];

}

void FuncB (void) {

darr[c] = darr[b];

}

void FuncC (void) {

darr[c] = darr[a] + darr[b];

}

void FuncD (void) {

darr[c] = darr[a] + darr[b];

}

void main(void) {

FuncA ();

FuncB ();

while(1);

}

; FUNCTION FuncA (BEGIN) ; FUNCTION FuncB (BEGIN) ; FUNCTION FuncC (BEGIN) ; FUNCTION FuncD (BEGIN)

R MOV A,#LOW darr R MOV A,#LOW darr R MOV A,#LOW darr ----- + ----- R MOV A,#LOW darr

R ADD A,b R ADD A,b R ADD A,b | R ADD A,b

MOV R0,A ----- + ----- MOV R0,A MOV

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值