這是我能想出迄今: GCC相關: SSA for Trees Tree SSA – A New Optimization Framework for GCC Tree SSA A New Optimization Infrastructure for GCC Design and Implementation of Tree SSA 其他: An Implementation of Sparse
我正在執行SSA構建我正在編寫一個編譯器。在SSA算法中有一些我不明白的地方(使用Java編寫的the Cytron paper和現代編譯器實現,A.W.Appel的第二版)。如果一個變量y是在一個直線控制流路徑中第一次(和使用過)定義的,但從未在另一條平行路徑中定義。我是否必須在連接點處插入PHI函數(定義爲y的塊的優勢邊界)? x = 1; // A
if (P) // A
我一直在研究使用SSA指定的IR代碼,特別是在這種形式下生成LLVM IR。然而,當我提出一個具有非平凡複製語義的類型時,我對此是否有效感到困惑。例如, void f() {
std::string s = "Too long for you, short string optimization!";
std::string s1 = s + " Also, goodbye S