double x[1024];

ってやろうとしたら、スタック領域に収まりきらずに誤動作した。

実験で使っているDSP(Digital Signal Processorだったかな)という信号処理用のチップにのせるプログラムで、double x[1024]; としてforループでxの中身を0に初期化していったら、x[50] くらいで処理がとまったり、ループするはずのないところで無限ループしたり。どうもスタック領域に乗りきらないらしく、プログラムカウンタに変な値を書き込んでしまった?みたい。

グローバル変数として宣言したら問題なく動いた。

この話をおもしろいねーって何人かの人に言ってみたけど、反応が薄くてちょっと悲しかった。