I will cut this commit into pieces (as far as possible) but I wanted to get some initial feedback. http://reviews.llvm.org/D7986 EMAIL PREFERENCES http://reviews.llvm.org/settings/panel/emailpreferences/