#define HOGE 10
for (i = 0; i < HOGE - 1; i++)
のHOGE - 1の部分って最適化オプションなしで、
最適化されていちいち計算しないで9になりますか?
コンパイラはgcc3.3.2です。