第9章节代码生成,哈工大王宏志.pptVIP

  • 6
  • 0
  • 约1.62万字
  • 约 58页
  • 2017-04-01 发布于四川
  • 举报
第9章节代码生成,哈工大王宏志

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 9.3.3 代码生成算法 寄存器选择函数getreg 函数getreg返回保存x := y op z的x值的位置L 如果变量y在R中,且R不含其它变量的值,并且在执行x:=y op z后y不会再被引用,则返回R作为L。 否则,返回一个空闲寄存器,如果有的话 否则,如果x在块中还会再被引用,或者op是必须使用寄存器的算符,则找一个已被占用的寄存器R(可能产生MOV R,M指令,并修改M的地址描述符) 否则,如果x在基本块中不会再被引用,或找不到适当的被占用寄存器,则选择x的内存单元作为L。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. * * 9.3.3 代码生成算法 赋值语句d := (a ? b) + (a ?c) + (a ? c) 编译产生的三地址码序列为: t1 := a ? b t2 := a ? c t3 :=

文档评论(0)

1亿VIP精品文档

相关文档