关于寄存器分配问题
看了这么久的编译原理,但是至今对于怎么编写寄存器分配这部分模块依然是一窍不通。
这里面哪位高人,已经实现了一个能够产生有寄存器的汇编语言的编译器(哪怕是玩具编译器),或者有已经能够想象出如何编写能够产生有寄存器的汇编语言的模块,请您站出来,给我指点一下迷津
那本龙书,我觉得里面寄存器分配的部分我觉得讲得很模糊,
那本虎书,我是看中文版的,包括Java和C两个版本,但都没有看懂(而且我还发现里面有很多翻译错误,觉得翻译质量不是很好)
请问高人应该看什么书,或者是在哪里可以找到这方面好的内容,如果您让我看源代码,能不能给一个简单点的编译器看源代码,对于gcc我实在是看到就像吐了,实在是不知道那一部分是关于寄存器的分配的部分。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
自己心中应该有想过怎么分配吧
lcc ?
那请问斑竹是从哪方面的渠道或者是看什么书 理解寄存器分配问题(包括构建干扰图和进行图的着色和进行溢出代码的处理)?
我觉得我看书也有一段时间了,但是总发觉自己还没有能够掌握大局,所有有点着急
谢谢这位仁兄推荐lcc,我看过那本介绍lcc的书(可移植的C目标编译器local c compiler),里面关于寄存器的分配就是一笔带过,作者好像是每个人都理解寄存器分配问题似的,所以……,不过感谢仁兄推荐!
lcc的寄存器分配作者都说太简陋。
你要是只想明白理论,看几个论文,虎书的算法讲得不清楚吗?可以考虑EAC和鲸书。觉得翻译不行看影印版。想看代码,open64可以考虑.................不推荐GCC(我也很OU它)。
PCC是另一个选择,编译器很简单,好像是图染色算法,记不请了。
[ 本帖最后由 prolj 于 2008-3-5 12:50 编辑 ]
不是所有的知识都需要通过看书才知道的,自己也可以思考
我们都在思考阿,只是实在没有什么灵感的时候才会去看书的
您是斑竹,算是高手中的高手,必然也会有这种感受的
好的谢谢,我看看,谢谢指导!
大家在同一个坛子上就是相互学习相互帮助的