blob: 10e7aba54346c71d42d073661ee1b5b69bd9e9ee [file] [log] [blame]
Chris Lattner86c27ee2005-08-02 22:10:21 +00001This 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
Misha Brukmance07e992009-01-08 16:40:25 +00003LLVM, please submit a patch to this file to add yourself, and it will be
Chris Lattner86c27ee2005-08-02 22:10:21 +00004done!
Misha Brukmanb2961602003-09-22 21:56:08 +00005
Misha Brukman0fc20c82003-10-20 03:59:05 +00006The list is sorted by name 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).
Misha Brukmanb2961602003-09-22 21:56:08 +000010
11N: Vikram Adve
12E: vadve@cs.uiuc.edu
13W: http://www.cs.uiuc.edu/~vadve/
14D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
15
Owen Anderson71a18722006-05-15 05:13:07 +000016N: Owen Anderson
17E: resistor@mac.com
Owen Anderson89fc9422007-07-03 02:28:17 +000018D: LCSSA pass and related LoopUnswitch work
19D: GVNPRE pass, TargetData refactoring, random improvements
Owen Anderson71a18722006-05-15 05:13:07 +000020
Chris Lattnerf69dcb12004-09-23 04:30:05 +000021N: Henrik Bach
22D: MingW Win32 API portability layer
23
Misha Brukmanf200eee2004-08-05 19:09:47 +000024N: Nate Begeman
25E: natebegeman@mac.com
Nate Begemane5ce8472006-04-11 05:47:45 +000026D: PowerPC backend developer
27D: Target-independent code generator and analysis improvements
Misha Brukmanf200eee2004-08-05 19:09:47 +000028
Chris Lattner4e6b17a2006-01-08 08:25:38 +000029N: Daniel Berlin
30E: dberlin@dberlin.org
31D: ET-Forest implementation.
Daniel Berlin2f5d5932007-09-09 01:10:40 +000032D: Sparse bitmap
Chris Lattner4e6b17a2006-01-08 08:25:38 +000033
Neil Booth0b0613632007-08-25 00:31:24 +000034N: Neil Booth
35E: neil@daikokuya.co.uk
Misha Brukmance07e992009-01-08 16:40:25 +000036D: APFloat implementation.
Neil Booth0b0613632007-08-25 00:31:24 +000037
Misha Brukmanb2961602003-09-22 21:56:08 +000038N: Misha Brukman
Misha Brukman2d772142003-10-17 17:28:21 +000039E: brukman+llvm@uiuc.edu
Misha Brukmanb2961602003-09-22 21:56:08 +000040W: http://misha.brukman.net
Misha Brukmanf200eee2004-08-05 19:09:47 +000041D: Portions of X86 and Sparc JIT compilers, PowerPC backend
42D: Incremental bytecode loader
Misha Brukmanb2961602003-09-22 21:56:08 +000043
44N: Cameron Buschardt
Misha Brukman2d772142003-10-17 17:28:21 +000045E: buschard@uiuc.edu
Misha Brukman0fc20c82003-10-20 03:59:05 +000046D: The `mem2reg' pass - promotes values stored in memory to registers
Misha Brukmanb2961602003-09-22 21:56:08 +000047
Chandler Carruthbb7a6242007-01-08 03:10:00 +000048N: Chandler Carruth
49E: chandlerc@gmail.com
50D: LinkTimeOptimizer for Linux, via binutils integration, and C API
51
Misha Brukmanb2961602003-09-22 21:56:08 +000052N: Casey Carter
Misha Brukman2d772142003-10-17 17:28:21 +000053E: ccarter@uiuc.edu
Misha Brukmanb2961602003-09-22 21:56:08 +000054D: Fixes to the Reassociation pass, various improvement patches
55
Chris Lattner4c286c32005-11-29 00:57:06 +000056N: Evan Cheng
57E: evan.cheng@apple.com
Evan Chengb3ff6b72007-02-15 22:26:28 +000058D: ARM and X86 backends
Evan Chengfc32dcb2006-04-12 21:28:14 +000059D: Instruction scheduler improvements
Evan Cheng5d286d82007-05-07 17:58:13 +000060D: Register allocator improvements
Evan Chengfc32dcb2006-04-12 21:28:14 +000061D: Loop optimizer improvements
62D: Target-independent code generator improvements
Chris Lattner4c286c32005-11-29 00:57:06 +000063
Dan Villiom Podlaski Christiansenbf22bc62009-01-19 15:04:29 +000064N: Dan Villiom Podlaski Christiansen
65E: danchr@gmail.com
66E: danchr@cs.au.dk
67W: http://villiom.dk
68D: LLVM Makefile improvements
69D: Clang diagnostic & driver tweaks
70S: Aarhus, Denmark
71
Chris Lattnerf69dcb12004-09-23 04:30:05 +000072N: Jeff Cohen
Jeff Cohen0939d772005-05-08 01:07:48 +000073E: jeffc@jolt-lang.org
74W: http://jolt-lang.org
Chris Lattnerf69dcb12004-09-23 04:30:05 +000075D: Native Win32 API portability layer
76
Misha Brukman2d772142003-10-17 17:28:21 +000077N: John T. Criswell
78E: criswell@uiuc.edu
John Criswell0a4a4892007-06-29 18:24:05 +000079D: Original Autoconf support, documentation improvements, bug fixes
Misha Brukman2d772142003-10-17 17:28:21 +000080
Stefanus Du Toitb3e849c2009-04-03 21:41:52 +000081N: Stefanus Du Toit
82E: stefanus.dutoit@rapidmind.com
83D: Bug fixes and minor improvements
84
Rafael Espindolaa3fdc022006-05-14 20:29:25 +000085N: Rafael Avila de Espindola
86E: rafael.espindola@gmail.com
87D: The ARM backend
88
Chris Lattner4ce08a02004-09-23 04:36:01 +000089N: Alkis Evlogimenos
Alkis Evlogimenosab5948f2004-09-23 04:39:30 +000090E: alkis@evlogimenos.com
Chris Lattner4ce08a02004-09-23 04:36:01 +000091D: Linear scan register allocator, many codegen improvements, Java frontend
92
Misha Brukmanb2961602003-09-22 21:56:08 +000093N: Brian Gaeke
94E: gaeke@uiuc.edu
95W: http://www.students.uiuc.edu/~gaeke/
Chris Lattner4e514c12005-12-22 06:09:08 +000096D: Portions of X86 static and JIT compilers; initial SparcV8 backend
Misha Brukmance07e992009-01-08 16:40:25 +000097D: Dynamic trace optimizer
Misha Brukman2d772142003-10-17 17:28:21 +000098D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
Misha Brukmanb2961602003-09-22 21:56:08 +000099
Nicolas Geoffray45cdf302007-02-27 10:44:42 +0000100N: Nicolas Geoffray
101E: nicolas.geoffray@lip6.fr
102W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
103D: PPC backend fixes for Linux
104
Misha Brukmanf200eee2004-08-05 19:09:47 +0000105N: Louis Gerbarg
106D: Portions of the PowerPC backend
107
Chris Lattner4e514c12005-12-22 06:09:08 +0000108N: Saem Ghani
109E: saemghani@gmail.com
110D: Callgraph class cleanups
111
Anton Korobeynikovf5e941b2008-03-23 08:58:32 +0000112N: Mikhail Glushenkov
113E: foldr@codedgers.com
114D: Author of llvmc2
115
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000116N: Dan Gohman
Dan Gohmancf891f42008-10-21 19:50:00 +0000117E: gohman@apple.com
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000118D: Miscellaneous bug fixes
119
David Greene55236d22007-06-08 17:20:08 +0000120N: David Greene
121E: greened@obbligato.org
122D: Miscellaneous bug fixes
123D: Register allocation refactoring
124
Gabor Greifefe65362008-05-10 08:32:32 +0000125N: Gabor Greif
126E: ggreif@gmail.com
127D: Improvements for space efficiency
128
Misha Brukmance07e992009-01-08 16:40:25 +0000129N: Lang Hames
130E: lhames@gmail.com
131D: PBQP-based register allocator
132
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000133N: Gordon Henriksen
134E: gordonhenriksen@mac.com
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000135D: Pluggable GC support
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000136D: C interface
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000137D: Ocaml bindings
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000138
Raul Herbster30b0f2f2007-08-29 18:21:29 +0000139N: Raul Fernandes Herbster
140E: raul@dsc.ufcg.edu.br
141D: JIT support for ARM
142
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000143N: Paolo Invernizzi
Misha Brukman309ca692004-10-26 15:55:12 +0000144E: arathorn@fastwebnet.it
Misha Brukmance07e992009-01-08 16:40:25 +0000145D: Visual C++ compatibility fixes
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000146
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000147N: Patrick Jenkins
148E: patjenk@wam.umd.edu
149D: Nightly Tester
150
Misha Brukman323ed352004-09-21 16:54:37 +0000151N: Brad Jones
152E: kungfoomaster@nondot.org
153D: Support for packed types
154
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000155N: Dale Johannesen
156E: dalej@apple.com
Dale Johannesen82434382007-04-25 00:14:49 +0000157D: ARM constant islands improvements
Dale Johannesenf8ad9552007-07-05 16:56:24 +0000158D: Tail merging improvements
159D: Rewrite X87 back end
Dale Johannesen005ac652007-09-28 18:46:28 +0000160D: Use APFloat for floating point constants widely throughout compiler
161D: Implement X87 long double
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000162
Reid Spencerb195d9d2006-03-23 23:21:29 +0000163N: Eric Kidd
164W: http://randomhacks.net/
165D: llvm-config script
166
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000167N: Anton Korobeynikov
168E: asl@math.spbu.ru
Anton Korobeynikov4d396b12007-05-06 20:33:02 +0000169D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
170D: x86/linux PIC codegen, aliases, regparm/visibility attributes
171D: Switch lowering refactoring
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000172
Chris Lattner3acd9182004-10-27 15:54:23 +0000173N: Sumant Kowshik
174E: kowshik@uiuc.edu
175D: Author of the original C backend
176
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000177N: Christopher Lamb
178E: christopher.lamb@gmail.com
Christopher Lamba1eb1552007-08-10 22:22:41 +0000179D: aligned load/store support, parts of noalias and restrict support
180D: vreg subreg infrastructure, X86 codegen improvements based on subregs
Christopher Lamb52cf47e2007-12-11 09:32:07 +0000181D: address spaces
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000182
Chris Lattner4c286c32005-11-29 00:57:06 +0000183N: Jim Laskey
184E: jlaskey@apple.com
185D: Improvements to the PPC backend, instruction scheduling
Jim Laskeyabf41f22006-08-01 09:01:40 +0000186D: Debug and Dwarf implementation
Misha Brukmance07e992009-01-08 16:40:25 +0000187D: Auto upgrade mangler
Jim Laskeyabf41f22006-08-01 09:01:40 +0000188D: llvm-gcc4 svn wrangler
Chris Lattner4c286c32005-11-29 00:57:06 +0000189
Misha Brukmanb2961602003-09-22 21:56:08 +0000190N: Chris Lattner
191E: sabre@nondot.org
192W: http://nondot.org/~sabre/
193D: Primary architect of LLVM
194
Tanya Lattner706a9ca2007-07-02 18:10:52 +0000195N: Tanya Lattner (Tanya Brethour)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000196E: tonic@nondot.org
197W: http://nondot.org/~tonic/
198D: The initial llvm-ar tool, converted regression testsuite to dejagnu
199D: Modulo scheduling in the SparcV9 backend
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000200D: Release manager (1.7+)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000201
Misha Brukmane9b0a022005-02-14 09:07:23 +0000202N: Andrew Lenharth
203E: alenhar2@cs.uiuc.edu
204W: http://www.lenharth.org/~andrewl/
205D: Alpha backend
Andrew Lenharth63223c92006-04-13 02:05:30 +0000206D: Sampling based profiling
Misha Brukmane9b0a022005-02-14 09:07:23 +0000207
Nick Lewycky97198c92006-08-29 01:42:47 +0000208N: Nick Lewycky
209E: nicholas@mxc.ca
210D: PredicateSimplifier pass
211
Bill Wendlingcb0a6602007-05-31 04:14:28 +0000212N: Bruno Cardoso Lopes
213E: bruno.cardoso@gmail.com
214W: http://www.brunocardoso.org
215D: The Mips backend
216
Duraid Madina735e0ac2005-03-17 18:57:02 +0000217N: Duraid Madina
218E: duraid@octopus.com.au
219W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
Duraid Madina2672a8e2007-06-30 15:47:36 +0000220D: IA64 backend, BigBlock register allocator
Duraid Madina735e0ac2005-03-17 18:57:02 +0000221
Chris Lattner96264702004-11-18 21:04:21 +0000222N: Michael McCracken
223E: michael.mccracken@gmail.com
224D: Line number support for llvmgcc
225
Chris Lattnerb8356b32004-06-25 21:00:10 +0000226N: Vladimir Merzliakov
227E: wanderer@rsu.ru
Misha Brukman323ed352004-09-21 16:54:37 +0000228D: Test suite fixes for FreeBSD
Chris Lattnerb8356b32004-06-25 21:00:10 +0000229
Bill Wendling08f8b332007-12-05 21:26:54 +0000230N: Scott Michel
231E: scottm@aero.org
232D: Added STI Cell SPU backend.
233
Misha Brukman309ca692004-10-26 15:55:12 +0000234N: Morten Ofstad
235E: morten@hue.no
Misha Brukmance07e992009-01-08 16:40:25 +0000236D: Visual C++ compatibility fixes
Misha Brukman309ca692004-10-26 15:55:12 +0000237
Richard Osborne3fa75ff2008-11-07 12:44:36 +0000238N: Richard Osborne
239E: richard@xmos.com
240D: XCore backend
241
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000242N: Devang Patel
243E: dpatel@apple.com
244D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
245D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
Devang Patel5d02a0c2007-09-27 17:32:04 +0000246D: Optimizer improvements, Loop Index Split
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000247
Misha Brukmanb7206e72004-05-06 16:53:18 +0000248N: Vladimir Prus
Vladimir Prus1100eea2006-05-16 05:36:15 +0000249W: http://vladimir_prus.blogspot.com
Misha Brukmanb7206e72004-05-06 16:53:18 +0000250E: ghost@cs.msu.su
Misha Brukman9cd94d72004-06-25 13:37:03 +0000251D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
Misha Brukmanb7206e72004-05-06 16:53:18 +0000252
Anton Korobeynikovaf2d3792007-03-21 21:45:25 +0000253N: Roman Samoilov
254E: roman@codedgers.com
255D: MSIL backend
256
Duncan Sandsef476fd2007-03-05 09:21:11 +0000257N: Duncan Sands
258E: baldrick@free.fr
Duncan Sands586eccb2007-07-05 10:32:33 +0000259D: Ada front-end, exception handling improvements
Duncan Sandsef476fd2007-03-05 09:21:11 +0000260
Misha Brukmanb2961602003-09-22 21:56:08 +0000261N: Ruchira Sasanka
262E: sasanka@uiuc.edu
263D: Graph coloring register allocator for the Sparc64 backend
264
Arnold Schwaighofer68c84112007-10-11 18:54:49 +0000265N: Arnold Schwaighofer
266E: arnold.schwaighofer@gmail.com
267D: Tail call optimization for the x86 backend
268
Misha Brukmanb2961602003-09-22 21:56:08 +0000269N: Anand Shukla
270E: ashukla@cs.uiuc.edu
Misha Brukman2d772142003-10-17 17:28:21 +0000271D: The `paths' pass
Misha Brukmanb2961602003-09-22 21:56:08 +0000272
Brian Gaeke75920ee2003-11-10 03:05:36 +0000273N: Reid Spencer
Reid Spencer3336aa02006-08-01 16:52:07 +0000274E: rspencer@reidspencer.com
275W: http://reidspencer.com/
Reid Spencer5c18c812007-06-30 06:56:50 +0000276D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
Brian Gaeke75920ee2003-11-10 03:05:36 +0000277
Chris Lattner3363e272005-02-19 17:14:24 +0000278N: Adam Treat
279E: manyoso@yahoo.com
280D: C++ bugs filed, and C++ front-end bug fixes.
281
Lauro Ramos Venancio2d6b4bf2007-05-06 00:41:36 +0000282N: Lauro Ramos Venancio
283E: lauro.venancio@indt.org.br
284D: ARM backend improvements
285D: Thread Local Storage implementation
286
Misha Brukmanb2961602003-09-22 21:56:08 +0000287N: Bill Wendling
Chris Lattner936ef2f2006-08-01 16:40:42 +0000288E: isanbard@gmail.com
Bill Wendling4c067652008-08-28 23:16:37 +0000289D: Machine LICM
Bill Wendlingce0228d2007-09-18 05:28:19 +0000290D: Darwin exception handling
Bill Wendlingeaeeb6f2007-05-20 19:56:24 +0000291D: MMX & SSSE3 instructions
292D: SPEC2006 support
Jakob Stoklund Olesenb36a7ac2009-04-28 06:15:00 +0000293