bss初期化忘れ

gccを使う場合にbssを初期化せずに使うと言う愚を犯していました。いちおう動作を確認したコードをcvsに置こうとしたのですが、ブランチがどうのとエラーが出て置けません。明日だな。
いちおう、記録。bf533/bfelf.ldの変更箇所(71行目より)

    .bss :
    {
        __bss_start = . ;
        *(.bss)
        *(COMMON)
        __bss_end = . ;
    } > MEM_DATA_B

startup.Sの83行目に追加

.extern __bss_start, __bss_end;

startup.Sの109行目に追加

#ifdef __GNUC__                 // bss領域の初期化
    LOADLABEL( r0, __bss_start) // bss開始番地
    LOADLABEL( r1, __bss_end )
    r2 = r1 - r0;            // bssのサイズ
    p0 = r0;                // 開始アドレス
    p2 = r2;
    r0 = 0;
    loop bssfill lc0 = p2; 
loop_begin bssfill
        b[p0++] = r0;
loop_end bssfill;

#elif defined(__ECC__)
#else
#error "Compiler is not supported"
#endif