Master Thesis Seminar: "Global Value Numbering in GCC"

Date: October 25, 2004 (Monday) at 10:00

Mårten Kongstad
During the first half of 2004, the GNU Compiler Collection (GCC) underwent a major internal transition, as the development branch responsible for the Static Single Assignment (SSA) form -- a clever scheme for intermediate code representation -- was incorporated into GCC's main branch. Many compiler optimisations that existed pre-SSA benefit greatly from translation to SSA form; such is the case of Global Value Numbering (GVN), which is an algorithm for finding and removing redundancies in the form of expressions calculated more than once. This paper presents the GVN optimisation and how the author implemented it on SSA form for use in GCC, accompanied by GVN performance measurements derived from the SPEC CPU2000 benchmark suite. Performance was boosted by up to 6.1 %: these results motivate the inclusion of GVN on SSA form in GCC.

Room: Glasburen

Last modified Dec 9, 2011 12:59 pm