Linux 上のGCC ARM Cross compiler で作るのは普通にあって、それで作ったのを大学院の授業では読んでみたわけですが...
clang で作れるんじゃないか?
で、clang -arch arm で ARM をはいてくれるわけですが、OS X だからな。elf ではなく mach-o 。まぁ、いろいろいろ問題はあるが...
entry.S
が通らない。なんか命令がないとか言ってくる。
1:
CMP r1, r2
STLTMIA r1!, {r3}
BLT 1b
とか書いてあるんですが、しばらくわからなかったんだど、LT って、Predication か。アセンブラの命令に条件をつけられるあれですね。じゃぁ、
STMIALT r1!, {r3}
だろ? LTは後ろに付くはずだけど。これで通りました。なんだよ。
なんだが、問題は Linker か。開始アドレスを指定したり、segment の位置を指定したりしないといけないんだが、OS X の ld でどうやればいいのかがわからん。
できないってことはないんじゃないかなぁ。
まぁ、clang を elf をはくように作り直しても良いはずなんですが、mach-o でやっても面白いかな。
GCC版なCbCもあるんだが、最新版に合わせるのは大変なんだよな。
gcc なcross compilerはあるので、それでclangを作っても良いんだけど。
いろいろ方法があるだけに悩ましい。
No comments:
Post a Comment