1This file is a partial list of people who have contributed to the LLVM 2project. If you have contributed a patch or made some other contribution to 3LLVM, please submit a patch to this file to add yourself, and it will be 4done! 5 6The list is sorted by surname and formatted to allow easy grepping and 7beautification by scripts. The fields are: name (N), email (E), web-address 8(W), PGP key ID and fingerprint (P), description (D), and snail-mail address 9(S). 10 11 12N: Vikram Adve 13E: vadve@cs.uiuc.edu 14W: http://www.cs.uiuc.edu/~vadve/ 15D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM 16 17N: Owen Anderson 18E: resistor@mac.com 19D: LCSSA pass and related LoopUnswitch work 20D: GVNPRE pass, TargetData refactoring, random improvements 21 22N: Henrik Bach 23D: MingW Win32 API portability layer 24 25N: Nate Begeman 26E: natebegeman@mac.com 27D: PowerPC backend developer 28D: Target-independent code generator and analysis improvements 29 30N: Daniel Berlin 31E: dberlin@dberlin.org 32D: ET-Forest implementation. 33D: Sparse bitmap 34 35N: Neil Booth 36E: neil@daikokuya.co.uk 37D: APFloat implementation. 38 39N: Misha Brukman 40E: brukman+llvm@uiuc.edu 41W: http://misha.brukman.net 42D: Portions of X86 and Sparc JIT compilers, PowerPC backend 43D: Incremental bitcode loader 44 45N: Cameron Buschardt 46E: buschard@uiuc.edu 47D: The `mem2reg' pass - promotes values stored in memory to registers 48 49N: Chandler Carruth 50E: chandlerc@gmail.com 51D: LinkTimeOptimizer for Linux, via binutils integration, and C API 52 53N: Casey Carter 54E: ccarter@uiuc.edu 55D: Fixes to the Reassociation pass, various improvement patches 56 57N: Evan Cheng 58E: evan.cheng@apple.com 59D: ARM and X86 backends 60D: Instruction scheduler improvements 61D: Register allocator improvements 62D: Loop optimizer improvements 63D: Target-independent code generator improvements 64 65N: Dan Villiom Podlaski Christiansen 66E: danchr@gmail.com 67E: danchr@cs.au.dk 68W: http://villiom.dk 69D: LLVM Makefile improvements 70D: Clang diagnostic & driver tweaks 71S: Aarhus, Denmark 72 73N: Jeff Cohen 74E: jeffc@jolt-lang.org 75W: http://jolt-lang.org 76D: Native Win32 API portability layer 77 78N: John T. Criswell 79E: criswell@uiuc.edu 80D: Original Autoconf support, documentation improvements, bug fixes 81 82N: Stefanus Du Toit 83E: stefanus.dutoit@rapidmind.com 84D: Bug fixes and minor improvements 85 86N: Rafael Avila de Espindola 87E: rafael.espindola@gmail.com 88D: The ARM backend 89 90N: Alkis Evlogimenos 91E: alkis@evlogimenos.com 92D: Linear scan register allocator, many codegen improvements, Java frontend 93 94N: Ryan Flynn 95E: pizza@parseerror.com 96D: Miscellaneous bug fixes 97 98N: Brian Gaeke 99E: gaeke@uiuc.edu 100W: http://www.students.uiuc.edu/~gaeke/ 101D: Portions of X86 static and JIT compilers; initial SparcV8 backend 102D: Dynamic trace optimizer 103D: FreeBSD/X86 compatibility fixes, the llvm-nm tool 104 105N: Nicolas Geoffray 106E: nicolas.geoffray@lip6.fr 107W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/ 108D: PPC backend fixes for Linux 109 110N: Louis Gerbarg 111D: Portions of the PowerPC backend 112 113N: Saem Ghani 114E: saemghani@gmail.com 115D: Callgraph class cleanups 116 117N: Mikhail Glushenkov 118E: foldr@codedgers.com 119D: Author of llvmc2 120 121N: Dan Gohman 122E: gohman@apple.com 123D: Miscellaneous bug fixes 124 125N: David Goodwin 126E: david@goodwinz.net 127D: Thumb-2 code generator 128 129N: David Greene 130E: greened@obbligato.org 131D: Miscellaneous bug fixes 132D: Register allocation refactoring 133 134N: Gabor Greif 135E: ggreif@gmail.com 136D: Improvements for space efficiency 137 138N: James Grosbach 139E: grosbach@apple.com 140D: SjLj exception handling support 141D: General fixes and improvements for the ARM back-end 142 143N: Lang Hames 144E: lhames@gmail.com 145D: PBQP-based register allocator 146 147N: Gordon Henriksen 148E: gordonhenriksen@mac.com 149D: Pluggable GC support 150D: C interface 151D: Ocaml bindings 152 153N: Raul Fernandes Herbster 154E: raul@dsc.ufcg.edu.br 155D: JIT support for ARM 156 157N: Paolo Invernizzi 158E: arathorn@fastwebnet.it 159D: Visual C++ compatibility fixes 160 161N: Patrick Jenkins 162E: patjenk@wam.umd.edu 163D: Nightly Tester 164 165N: Dale Johannesen 166E: dalej@apple.com 167D: ARM constant islands improvements 168D: Tail merging improvements 169D: Rewrite X87 back end 170D: Use APFloat for floating point constants widely throughout compiler 171D: Implement X87 long double 172 173N: Brad Jones 174E: kungfoomaster@nondot.org 175D: Support for packed types 176 177N: Rod Kay 178E: rkay@auroraux.org 179D: Author of LLVM Ada bindings 180 181N: Eric Kidd 182W: http://randomhacks.net/ 183D: llvm-config script 184 185N: Anton Korobeynikov 186E: asl@math.spbu.ru 187D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv. 188D: x86/linux PIC codegen, aliases, regparm/visibility attributes 189D: Switch lowering refactoring 190 191N: Sumant Kowshik 192E: kowshik@uiuc.edu 193D: Author of the original C backend 194 195N: Benjamin Kramer 196E: benny.kra@gmail.com 197D: Miscellaneous bug fixes 198 199N: Christopher Lamb 200E: christopher.lamb@gmail.com 201D: aligned load/store support, parts of noalias and restrict support 202D: vreg subreg infrastructure, X86 codegen improvements based on subregs 203D: address spaces 204 205N: Jim Laskey 206E: jlaskey@apple.com 207D: Improvements to the PPC backend, instruction scheduling 208D: Debug and Dwarf implementation 209D: Auto upgrade mangler 210D: llvm-gcc4 svn wrangler 211 212N: Chris Lattner 213E: sabre@nondot.org 214W: http://nondot.org/~sabre/ 215D: Primary architect of LLVM 216 217N: Tanya Lattner (Tanya Brethour) 218E: tonic@nondot.org 219W: http://nondot.org/~tonic/ 220D: The initial llvm-ar tool, converted regression testsuite to dejagnu 221D: Modulo scheduling in the SparcV9 backend 222D: Release manager (1.7+) 223 224N: Andrew Lenharth 225E: alenhar2@cs.uiuc.edu 226W: http://www.lenharth.org/~andrewl/ 227D: Alpha backend 228D: Sampling based profiling 229 230N: Nick Lewycky 231E: nicholas@mxc.ca 232D: PredicateSimplifier pass 233 234N: Bruno Cardoso Lopes 235E: bruno.cardoso@gmail.com 236W: http://www.brunocardoso.org 237D: The Mips backend 238 239N: Duraid Madina 240E: duraid@octopus.com.au 241W: http://kinoko.c.u-tokyo.ac.jp/~duraid/ 242D: IA64 backend, BigBlock register allocator 243 244N: Michael McCracken 245E: michael.mccracken@gmail.com 246D: Line number support for llvmgcc 247 248N: Vladimir Merzliakov 249E: wanderer@rsu.ru 250D: Test suite fixes for FreeBSD 251 252N: Scott Michel 253E: scottm@aero.org 254D: Added STI Cell SPU backend. 255 256N: Takumi Nakamura 257E: geek4civic@gmail.com 258E: chapuni@hf.rim.or.jp 259D: Cygwin and MinGW support. 260S: Yokohama, Japan 261 262N: Edward O'Callaghan 263E: eocallaghan@auroraux.org 264W: http://www.auroraux.org 265D: Add Clang support with various other improvements to utils/NewNightlyTest.pl 266D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings 267D: and error clean ups. 268 269N: Morten Ofstad 270E: morten@hue.no 271D: Visual C++ compatibility fixes 272 273N: Jakob Stoklund Olesen 274E: stoklund@2pi.dk 275D: Machine code verifier 276D: Blackfin backend 277 278N: Richard Osborne 279E: richard@xmos.com 280D: XCore backend 281 282N: Devang Patel 283E: dpatel@apple.com 284D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate 285D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements 286D: Optimizer improvements, Loop Index Split 287 288N: Sandeep Patel 289E: deeppatel1987@gmail.com 290D: ARM calling conventions rewrite, hard float support 291 292N: Wesley Peck 293E: peckw@wesleypeck.com 294W: http://wesleypeck.com/ 295D: MicroBlaze backend 296 297N: Francois Pichet 298E: pichet2000@gmail.com 299D: MSVC support 300 301N: Vladimir Prus 302W: http://vladimir_prus.blogspot.com 303E: ghost@cs.msu.su 304D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass 305 306N: Roman Samoilov 307E: roman@codedgers.com 308D: MSIL backend 309 310N: Duncan Sands 311E: baldrick@free.fr 312D: Ada support in llvm-gcc 313D: Dragonegg plugin 314D: Exception handling improvements 315D: Type legalizer rewrite 316 317N: Ruchira Sasanka 318E: sasanka@uiuc.edu 319D: Graph coloring register allocator for the Sparc64 backend 320 321N: Arnold Schwaighofer 322E: arnold.schwaighofer@gmail.com 323D: Tail call optimization for the x86 backend 324 325N: Shantonu Sen 326E: ssen@apple.com 327D: Miscellaneous bug fixes 328 329N: Anand Shukla 330E: ashukla@cs.uiuc.edu 331D: The `paths' pass 332 333N: Michael J. Spencer 334E: bigcheesegs@gmail.com 335D: Shepherding Windows COFF support into MC. 336D: Lots of Windows stuff. 337 338N: Reid Spencer 339E: rspencer@reidspencer.com 340W: http://reidspencer.com/ 341D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid 342 343N: Edwin Torok 344E: edwintorok@gmail.com 345D: Miscellaneous bug fixes 346 347N: Adam Treat 348E: manyoso@yahoo.com 349D: C++ bugs filed, and C++ front-end bug fixes. 350 351N: Lauro Ramos Venancio 352E: lauro.venancio@indt.org.br 353D: ARM backend improvements 354D: Thread Local Storage implementation 355 356N: Xerxes Ranby 357E: xerxes@zafena.se 358D: Cmake dependency chain and various bug fixes 359 360N: Bill Wendling 361E: wendling@apple.com 362D: Bunches of stuff 363 364N: Bob Wilson 365E: bob.wilson@acm.org 366D: Advanced SIMD (NEON) support in the ARM backend 367