3
LLVM引入了「毒性值」的概念,我從來不會明白這一點。例如,對於聲明LLVM中的毒性值和未定義的值
%add = add nsw i32 %x, 1
如果%x+1
嚴格小於最大123-132整數時,任意值將被分配到%添加。權利要求是正確的,在上面的語句,即%add = add nsw i32 %x, 1
,可以語義描述爲:
if (%x+1) overflows then %add = undef else %add = add i32 %x,1
?