c语言编译优化原则,一种C语言编译效率优化的方法与流程

技术特征:

1.一种c语言编译效率优化的方法,其特征在于,包括如下的步骤:

s1、获取每个节点中的节点信息,对节点信息进行保存;

S2、根据节点中指令的引用关系,找出每个节点的前置节点和引用节点,

S3、获取位于第一个节点的所有依赖节点,把第一个节点向下移动到有依赖节点时停止下沉,重复该步骤操作;

S4、获取位于最后一个节点的所有依赖节点,把第一个节点向上移动到有依赖节点时停止上移,重复该步骤操作;

S5、删除每个节点中的无效指令。

2.根据权利要求1所述的c语言编译效率优化的方法,其特征在于,所述的节点信息包括有指令编号、指令的各操作数、返回值的类型、指令类型、及指令的引用关系。

3.根据权利要求1所述的c语言编译效率优化的方法,其特征在于,所述s5的删除每个节点中的无效指令包括如下步骤:

S51、删除所有节点中开始的movelw指令,开始位置的movelw指令是常量移动到工作寄存器的指令,这些指令cf无效对于工作寄存器来说没有影响;

S52、删除所有节点中连续的movfw_es指令和movwf_es指令;

S53、删除所有节点中连续的movewf指令,因为两条连续的移动变量至工作寄存器,只有最后一条才会影响到工作寄存器,前面的都可以删除。

4.根据权利要求1所述的C语言编译效率优化的方法,其特征在于,所述前置节点是指一个节点的运行需要依赖的位于其前面的节点;所述引用节点是指在一个节点中引用的其它节点,两个节点相互构成为依赖节点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值