这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » IAR,10 IAR 2.10版本的编译器对汇编编译产生头代码的问题

共2条 1/1 1 跳转至

IAR,10 IAR 2.10版本的编译器对汇编编译产生头代码的问题

院士
2006-09-17 18:14:16     打赏
IAR,10 IAR 2.10版本的编译器对汇编编译产生头代码的问题



关键词: 版本     编译器     汇编     编译     产生     代码     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问 ?cstart_begin:
00E000 31400003 mov.w #0x300,SP
?cstart_call_main:
00E004 B01212E0 call #RESET
00E008 B0129CE9 call #exit
_exit:
00E00C 304010E0 br #0xE010
?C_EXIT:
?cstart_end:
__exit:
00E010 FF3F jmp ?C_EXIT

RESET MOV #300H,SP
RESET:
main:
00E012 31400003 mov.w #0x300,SP


可以看出CODE开始处被加入了一定量的代码,而这些代码没有实际作用。不仅浪费空间而且在某些应用中,如果此部分空间用作数据区,会造成意想不到的问题。
另外编译器加入上述代码后,对直接地址的指令操作,会产生寻址位置的偏移。

这是BUG吗?画蛇添足,看起来更象恶意的代码!不知有何办法解决?
使代码正常从CODE处开始。

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]