にゃごすwiki

DS開発/2008-5-20

 プロファイル その2

ヒントがプロファイラのソースに書かれていた。

no_instrument_function アトリビュート?を関数につけるとその関数は
プロファイル対象から外れるって寸法です。

つーことで、HblankHandlerを元のソースに戻して、
プロトタイプ宣言にアトリビュートを追加します。

void HblankHandler(void)
    __attribute__ ((no_instrument_function));

ついでに、cyg-profile-Sys.cに以下のプロトタイプ宣言を追加。

int Sys_FileOpenWrite (char *path)
    __attribute__ ((no_instrument_function));
int Sys_FileWrite (int handle, void *data, int count)
    __attribute__ ((no_instrument_function));
void Sys_FileClose (int handle)
    __attribute__ ((no_instrument_function));

makefileの CFLAGSN とcyg-profile-Sys.cのルールを削除します。

HBlankハンドラを移動しないですむのでちょっと楽になったかな。

サンプル(修正)
test_profile.ZIP(521)