ldスクリプト

VisualDSP++にオブジェクトとシンボル情報を読み込めたおかげで、何が起きているのか幾分わかってきました*1。たとえば、

.section program;

は、流石にだめで(^^;

.section .text;

に変更しました。
m68k実装だと、メモリは外付けRAMとROMですので、ldスクリプトファイルはCPU依存部で定義しています。開始アドレスとデータ位置はボード上のRAM、ROMで決まりますので、システム依存部のMakefile.configで、スタートアドレスなどを指定するだけで済みます。
翻ってBlackfinはと言うと、内蔵メモリと外付けメモリの速度差が大きく、オブジェクトの配置が性能に大きくかかわります*2。また、同じコアでもBF533とBF532ではメモリのサイズ、プログラム実行番地が異なるなどの差異があります。ldスクリプトファイルはシステム依存部に移しましたが、最適位置はアプリケーション・ディレクトリだと思います。
配置は正しくできたように見えますので、週末にでもVisualDSP++/EZ-KIT Lite上で動かしてみます。

*1:わかってきたので必ずしもVisualDSP++まで行かなくても情報を判断できるようになった。いまだとマップファイルであるjsp.symを見れば大体必要な情報を判別できる。

*2:というより、むしろリンカーこそ最適化の主役