gombeのブログ

マイコンの電子工作系PIC32/KiCad/C/C++/3D/

まだ制限付きのXC32コンパイラ使ってたのか?

XC32コンパイラはMIPS32アーキテクチャコンパイルツールです。実はこれ、ソースコードがmicrochip社によって公開されてます。これはつまり、「自分でリビルドして制限解除してね」と言っていることになります。

簡単に説明するともともとXC32コンパイラではGPLのライブラリなどが使用されています。(LGPLではないよー)そのためソースコードを入手できるというわけです。 そのコンパイルした生成物も著作権GPLに則って再度公開もできます。

今回はリビルドされたchipkitの付属のコンパイラを使用します。ただしスタートアップルーチンや、リンカスクリプトは用意しましょう。コンパイラはMPLABxに登録もできます。が、そうでなくともMakefile書けばなくても使えます。

最適化でサイズは結構減ります。-mips16が半分くらいまで減って、 -Osをつけるとさらに減ります。 また、速度の最適化をかけるとコードサイズは増えることがありますが、そのぶん早くなります。

というわけで生成物をGithubに転がしておきます。見たい方などはどうぞ。