上QQ阅读APP看书,第一时间看更新
What compilers do not like
As we've seen in the subsection about compiler tricks, compilers are at their best when they know exactly what data is being used in their computations. We've seen that, in such a case, they can even optimize entire algorithms away, replacing them with a simple mov eax, NNN. However, when a compiler isn't sure about the data, it has to generate extra-defensive code! There are two such sources of uncertainty, as is discussed next.