NewGVN Merged Into LLVM
The long in-development "NewGVN" code to provide a new global value numbering (GVN) algorithm within the LLVM code-base has been merged to master.
As explained in one of the reviews, "Initial check-in of a new global value numbering algorithm. The code have been developed by Daniel Berlin over the years, and the new implementation goal is that of addressing shortcomings of the current GVN infrastructure, i.e. long compile time for large testcases, lack of phi predication, no load/store value numbering etc..."
Those wanting to test NewGVN can pull in LLVM from today and pass -mllvm -enable-newgvn to enable the new code-path for testing. More details on llvm-dev.
As explained in one of the reviews, "Initial check-in of a new global value numbering algorithm. The code have been developed by Daniel Berlin over the years, and the new implementation goal is that of addressing shortcomings of the current GVN infrastructure, i.e. long compile time for large testcases, lack of phi predication, no load/store value numbering etc..."
Those wanting to test NewGVN can pull in LLVM from today and pass -mllvm -enable-newgvn to enable the new code-path for testing. More details on llvm-dev.
Add A Comment