通常會檢查返回類型的錯誤。但是,將繼續執行的代碼可能以不同的方式指定。保留執行流水線
if(!ret)
{
doNoErrorCode();
}
exit(1);
或
if(ret)
{
exit(1);
}
doNoErrorCode();
一個重量級的CPU可以推測使用簡單的統計數據極爲接近/地區所採用的分支的方式 - 我研究了4位機制的分支預測(-2,-1 ,0,+ 1,+ 2),其中零未知,2將被視爲一個真正的分支。
考慮到上面的簡單技術,我的問題是關於如何構造代碼。我認爲主要編譯器和主要架構之間必須有一個約定。這些是我的兩個問題
- 當代碼不是一個經常訪問的循環,布爾值被偏向於管道被填滿時?
- 有關分支的猜測必須從真或假或零開始(流水線必須填充一些東西)。這可能是什麼?
謝謝,我會給它一個讀。 – 2009-12-02 14:56:57
驚人的內容,多<3 – 2009-12-24 19:55:08