Microblaze で実行するコードにいくつかの変更を加えると、同じパスをたどるコードの実行で実行時に大きな不一致が見られることがあります。私が実際に同じパスを意味することを説明するために、次の例を取り上げます。
if ( condition )
execute_this();
else
execute_that(); // Modified this function
つまり、 function のコードを変更すると、が設定されていて functionが変更されていないexecute_that
場合でも、実行時に変更が表示されます。何が原因でしょうか? 関数のメモリ配置?キャッシュ?どんな手掛かり?condition
execute_this