[llvm-uc] binutils的unicore32移植

  • From: 刘智猷 <liuzhiyou.cs@xxxxxxxxx>
  • To: llvm-uc@xxxxxxxxxxxxx
  • Date: Wed, 12 Dec 2012 20:27:14 +0800

Hi all,

我最近看了一些binutils的代码和文档,现在想尝试着将binutils移植到unicore32上。我会尽快在github上建一个repo,并陆续向这个maillist发一些patch让大家帮忙review,谢谢!

下面是我的计划

1. bfd
这一部分主要是为binutils提供一个binary
format的抽象。我们应该只需要支持ELF(对吗?),所以只要实现ELF的后端就可以了。这一部分主要的工作是处理ELF定义的各种relocs。

2. opcodes
这个库只要负责对指令进行反汇编,往往会顺便将指令的内存表示也在这一部分实现。这样,gas会使用这一内存表示。因为指令不少,在这一部分可能会遇到一些设计和实现上的问题。到时候还要多多讨论。

3. binutils
实现上面两个库之后,应该就能将binutils的一些工具,如readelf,objdump移植到unicore32上了。这一步应该比较简单。

其余部分我还没有涉及,我估计接下去应该实现的是gas和ld,到时候再说吧!

Any ideas?

祝好,
刘智猷

Other related posts: