blob: 209a87f296c22a264966f9fb3f2d0a03bed31be3 [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
Bill Wendlinge71bd5a2009-06-12 18:02:40 +00006The 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).
Misha Brukmanb2961602003-09-22 21:56:08 +000010
Anton Korobeynikovbbee0552010-12-10 11:49:22 +000011
Misha Brukmanb2961602003-09-22 21:56:08 +000012N: 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
Owen Anderson71a18722006-05-15 05:13:07 +000017N: Owen Anderson
18E: resistor@mac.com
Owen Anderson89fc9422007-07-03 02:28:17 +000019D: LCSSA pass and related LoopUnswitch work
20D: GVNPRE pass, TargetData refactoring, random improvements
Owen Anderson71a18722006-05-15 05:13:07 +000021
Chris Lattnerf69dcb12004-09-23 04:30:05 +000022N: Henrik Bach
23D: MingW Win32 API portability layer
24
Misha Brukmanf200eee2004-08-05 19:09:47 +000025N: Nate Begeman
26E: natebegeman@mac.com
Nate Begemane5ce8472006-04-11 05:47:45 +000027D: PowerPC backend developer
28D: Target-independent code generator and analysis improvements
Misha Brukmanf200eee2004-08-05 19:09:47 +000029
Chris Lattner4e6b17a2006-01-08 08:25:38 +000030N: Daniel Berlin
31E: dberlin@dberlin.org
32D: ET-Forest implementation.
Daniel Berlin2f5d5932007-09-09 01:10:40 +000033D: Sparse bitmap
Chris Lattner4e6b17a2006-01-08 08:25:38 +000034
David Blaikie78091802011-09-08 05:32:49 +000035N: David Blaikie
36E: dblaikie@gmail.com
37D: General bug fixing/fit & finish, mostly in Clang
38
Neil Booth0b0613632007-08-25 00:31:24 +000039N: Neil Booth
40E: neil@daikokuya.co.uk
Misha Brukmance07e992009-01-08 16:40:25 +000041D: APFloat implementation.
Neil Booth0b0613632007-08-25 00:31:24 +000042
Misha Brukmanb2961602003-09-22 21:56:08 +000043N: Misha Brukman
Misha Brukman2d772142003-10-17 17:28:21 +000044E: brukman+llvm@uiuc.edu
Misha Brukmanb2961602003-09-22 21:56:08 +000045W: http://misha.brukman.net
Misha Brukmanf200eee2004-08-05 19:09:47 +000046D: Portions of X86 and Sparc JIT compilers, PowerPC backend
Duncan Sands18d52f22010-09-29 20:09:55 +000047D: Incremental bitcode loader
Misha Brukmanb2961602003-09-22 21:56:08 +000048
49N: Cameron Buschardt
Misha Brukman2d772142003-10-17 17:28:21 +000050E: buschard@uiuc.edu
Misha Brukman0fc20c82003-10-20 03:59:05 +000051D: The `mem2reg' pass - promotes values stored in memory to registers
Misha Brukmanb2961602003-09-22 21:56:08 +000052
Chandler Carruthbb7a6242007-01-08 03:10:00 +000053N: Chandler Carruth
54E: chandlerc@gmail.com
55D: LinkTimeOptimizer for Linux, via binutils integration, and C API
56
Misha Brukmanb2961602003-09-22 21:56:08 +000057N: Casey Carter
Misha Brukman2d772142003-10-17 17:28:21 +000058E: ccarter@uiuc.edu
Misha Brukmanb2961602003-09-22 21:56:08 +000059D: Fixes to the Reassociation pass, various improvement patches
60
Chris Lattner4c286c32005-11-29 00:57:06 +000061N: Evan Cheng
62E: evan.cheng@apple.com
Evan Chengb3ff6b72007-02-15 22:26:28 +000063D: ARM and X86 backends
Evan Chengfc32dcb2006-04-12 21:28:14 +000064D: Instruction scheduler improvements
Evan Cheng5d286d82007-05-07 17:58:13 +000065D: Register allocator improvements
Evan Chengfc32dcb2006-04-12 21:28:14 +000066D: Loop optimizer improvements
67D: Target-independent code generator improvements
Chris Lattner4c286c32005-11-29 00:57:06 +000068
Dan Villiom Podlaski Christiansenbf22bc62009-01-19 15:04:29 +000069N: Dan Villiom Podlaski Christiansen
70E: danchr@gmail.com
71E: danchr@cs.au.dk
72W: http://villiom.dk
73D: LLVM Makefile improvements
74D: Clang diagnostic & driver tweaks
75S: Aarhus, Denmark
76
Chris Lattnerf69dcb12004-09-23 04:30:05 +000077N: Jeff Cohen
Jeff Cohen0939d772005-05-08 01:07:48 +000078E: jeffc@jolt-lang.org
79W: http://jolt-lang.org
Chris Lattnerf69dcb12004-09-23 04:30:05 +000080D: Native Win32 API portability layer
81
Misha Brukman2d772142003-10-17 17:28:21 +000082N: John T. Criswell
83E: criswell@uiuc.edu
John Criswell0a4a4892007-06-29 18:24:05 +000084D: Original Autoconf support, documentation improvements, bug fixes
Misha Brukman2d772142003-10-17 17:28:21 +000085
Stefanus Du Toitb3e849c2009-04-03 21:41:52 +000086N: Stefanus Du Toit
87E: stefanus.dutoit@rapidmind.com
88D: Bug fixes and minor improvements
89
Rafael Espindolaa3fdc022006-05-14 20:29:25 +000090N: Rafael Avila de Espindola
91E: rafael.espindola@gmail.com
92D: The ARM backend
93
Chris Lattner4ce08a02004-09-23 04:36:01 +000094N: Alkis Evlogimenos
Alkis Evlogimenosab5948f2004-09-23 04:39:30 +000095E: alkis@evlogimenos.com
Chris Lattner4ce08a02004-09-23 04:36:01 +000096D: Linear scan register allocator, many codegen improvements, Java frontend
97
Ryan Flynn05e8de72009-07-15 01:32:31 +000098N: Ryan Flynn
99E: pizza@parseerror.com
100D: Miscellaneous bug fixes
101
Misha Brukmanb2961602003-09-22 21:56:08 +0000102N: Brian Gaeke
103E: gaeke@uiuc.edu
104W: http://www.students.uiuc.edu/~gaeke/
Chris Lattner4e514c12005-12-22 06:09:08 +0000105D: Portions of X86 static and JIT compilers; initial SparcV8 backend
Misha Brukmance07e992009-01-08 16:40:25 +0000106D: Dynamic trace optimizer
Misha Brukman2d772142003-10-17 17:28:21 +0000107D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
Misha Brukmanb2961602003-09-22 21:56:08 +0000108
Nicolas Geoffray45cdf302007-02-27 10:44:42 +0000109N: Nicolas Geoffray
110E: nicolas.geoffray@lip6.fr
111W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
112D: PPC backend fixes for Linux
113
Misha Brukmanf200eee2004-08-05 19:09:47 +0000114N: Louis Gerbarg
115D: Portions of the PowerPC backend
116
Chris Lattner4e514c12005-12-22 06:09:08 +0000117N: Saem Ghani
118E: saemghani@gmail.com
119D: Callgraph class cleanups
120
Anton Korobeynikovf5e941b2008-03-23 08:58:32 +0000121N: Mikhail Glushenkov
122E: foldr@codedgers.com
123D: Author of llvmc2
124
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000125N: Dan Gohman
Dan Gohmancf891f42008-10-21 19:50:00 +0000126E: gohman@apple.com
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000127D: Miscellaneous bug fixes
128
David Goodwin4de77f82009-07-08 17:55:48 +0000129N: David Goodwin
130E: david@goodwinz.net
131D: Thumb-2 code generator
132
David Greene55236d22007-06-08 17:20:08 +0000133N: David Greene
134E: greened@obbligato.org
135D: Miscellaneous bug fixes
136D: Register allocation refactoring
137
Gabor Greifefe65362008-05-10 08:32:32 +0000138N: Gabor Greif
139E: ggreif@gmail.com
140D: Improvements for space efficiency
141
Jim Grosbachbd3c63c2010-07-19 22:04:28 +0000142N: James Grosbach
143E: grosbach@apple.com
144D: SjLj exception handling support
145D: General fixes and improvements for the ARM back-end
Jim Grosbach6083d812011-10-22 18:17:32 +0000146D: MCJIT
147D: ARM integrated assembler and assembly parser
Jim Grosbachbd3c63c2010-07-19 22:04:28 +0000148
Misha Brukmance07e992009-01-08 16:40:25 +0000149N: Lang Hames
150E: lhames@gmail.com
151D: PBQP-based register allocator
152
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000153N: Gordon Henriksen
154E: gordonhenriksen@mac.com
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000155D: Pluggable GC support
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000156D: C interface
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000157D: Ocaml bindings
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000158
Raul Herbster30b0f2f2007-08-29 18:21:29 +0000159N: Raul Fernandes Herbster
160E: raul@dsc.ufcg.edu.br
161D: JIT support for ARM
162
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000163N: Paolo Invernizzi
Misha Brukman309ca692004-10-26 15:55:12 +0000164E: arathorn@fastwebnet.it
Misha Brukmance07e992009-01-08 16:40:25 +0000165D: Visual C++ compatibility fixes
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000166
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000167N: Patrick Jenkins
168E: patjenk@wam.umd.edu
169D: Nightly Tester
170
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000171N: Dale Johannesen
172E: dalej@apple.com
Dale Johannesen82434382007-04-25 00:14:49 +0000173D: ARM constant islands improvements
Dale Johannesenf8ad9552007-07-05 16:56:24 +0000174D: Tail merging improvements
175D: Rewrite X87 back end
Dale Johannesen005ac652007-09-28 18:46:28 +0000176D: Use APFloat for floating point constants widely throughout compiler
177D: Implement X87 long double
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000178
Bill Wendlinge4261472009-06-11 20:13:35 +0000179N: Brad Jones
180E: kungfoomaster@nondot.org
181D: Support for packed types
182
Chris Lattner633a0162009-08-18 17:04:44 +0000183N: Rod Kay
184E: rkay@auroraux.org
185D: Author of LLVM Ada bindings
186
Reid Spencerb195d9d2006-03-23 23:21:29 +0000187N: Eric Kidd
188W: http://randomhacks.net/
189D: llvm-config script
190
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000191N: Anton Korobeynikov
192E: asl@math.spbu.ru
Anton Korobeynikov4d396b12007-05-06 20:33:02 +0000193D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
194D: x86/linux PIC codegen, aliases, regparm/visibility attributes
195D: Switch lowering refactoring
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000196
Chris Lattner3acd9182004-10-27 15:54:23 +0000197N: Sumant Kowshik
198E: kowshik@uiuc.edu
199D: Author of the original C backend
200
Benjamin Kramer5aeac052009-08-20 15:20:15 +0000201N: Benjamin Kramer
202E: benny.kra@gmail.com
203D: Miscellaneous bug fixes
204
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000205N: Christopher Lamb
206E: christopher.lamb@gmail.com
Christopher Lamba1eb1552007-08-10 22:22:41 +0000207D: aligned load/store support, parts of noalias and restrict support
208D: vreg subreg infrastructure, X86 codegen improvements based on subregs
Christopher Lamb52cf47e2007-12-11 09:32:07 +0000209D: address spaces
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000210
Chris Lattner4c286c32005-11-29 00:57:06 +0000211N: Jim Laskey
212E: jlaskey@apple.com
213D: Improvements to the PPC backend, instruction scheduling
Jim Laskeyabf41f22006-08-01 09:01:40 +0000214D: Debug and Dwarf implementation
Misha Brukmance07e992009-01-08 16:40:25 +0000215D: Auto upgrade mangler
Jim Laskeyabf41f22006-08-01 09:01:40 +0000216D: llvm-gcc4 svn wrangler
Chris Lattner4c286c32005-11-29 00:57:06 +0000217
Misha Brukmanb2961602003-09-22 21:56:08 +0000218N: Chris Lattner
219E: sabre@nondot.org
220W: http://nondot.org/~sabre/
221D: Primary architect of LLVM
222
Tanya Lattner706a9ca2007-07-02 18:10:52 +0000223N: Tanya Lattner (Tanya Brethour)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000224E: tonic@nondot.org
225W: http://nondot.org/~tonic/
226D: The initial llvm-ar tool, converted regression testsuite to dejagnu
227D: Modulo scheduling in the SparcV9 backend
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000228D: Release manager (1.7+)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000229
Misha Brukmane9b0a022005-02-14 09:07:23 +0000230N: Andrew Lenharth
231E: alenhar2@cs.uiuc.edu
232W: http://www.lenharth.org/~andrewl/
233D: Alpha backend
Andrew Lenharth63223c92006-04-13 02:05:30 +0000234D: Sampling based profiling
Misha Brukmane9b0a022005-02-14 09:07:23 +0000235
Nick Lewycky97198c92006-08-29 01:42:47 +0000236N: Nick Lewycky
237E: nicholas@mxc.ca
238D: PredicateSimplifier pass
239
Bill Wendlingcb0a6602007-05-31 04:14:28 +0000240N: Bruno Cardoso Lopes
241E: bruno.cardoso@gmail.com
242W: http://www.brunocardoso.org
243D: The Mips backend
244
Duraid Madina735e0ac2005-03-17 18:57:02 +0000245N: Duraid Madina
246E: duraid@octopus.com.au
247W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
Duraid Madina2672a8e2007-06-30 15:47:36 +0000248D: IA64 backend, BigBlock register allocator
Duraid Madina735e0ac2005-03-17 18:57:02 +0000249
John McCall74699fd2011-08-02 01:38:19 +0000250N: John McCall
251E: rjmccall@apple.com
252D: Clang semantic analysis and IR generation
253
Chris Lattner96264702004-11-18 21:04:21 +0000254N: Michael McCracken
255E: michael.mccracken@gmail.com
256D: Line number support for llvmgcc
257
Chris Lattnerb8356b32004-06-25 21:00:10 +0000258N: Vladimir Merzliakov
259E: wanderer@rsu.ru
Misha Brukman323ed352004-09-21 16:54:37 +0000260D: Test suite fixes for FreeBSD
Chris Lattnerb8356b32004-06-25 21:00:10 +0000261
Bill Wendling08f8b332007-12-05 21:26:54 +0000262N: Scott Michel
263E: scottm@aero.org
264D: Added STI Cell SPU backend.
265
NAKAMURA Takumi48026f52010-08-28 20:24:43 +0000266N: Takumi Nakamura
267E: geek4civic@gmail.com
268E: chapuni@hf.rim.or.jp
NAKAMURA Takumifedb3462010-08-28 21:12:51 +0000269D: Cygwin and MinGW support.
NAKAMURA Takumi75418672011-10-29 23:42:14 +0000270D: Win32 tweaks.
NAKAMURA Takumi48026f52010-08-28 20:24:43 +0000271S: Yokohama, Japan
272
Duncan Sandsca6829a2009-06-12 12:52:24 +0000273N: Edward O'Callaghan
274E: eocallaghan@auroraux.org
275W: http://www.auroraux.org
276D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
277D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
278D: and error clean ups.
279
Misha Brukman309ca692004-10-26 15:55:12 +0000280N: Morten Ofstad
281E: morten@hue.no
Misha Brukmance07e992009-01-08 16:40:25 +0000282D: Visual C++ compatibility fixes
Misha Brukman309ca692004-10-26 15:55:12 +0000283
Jakob Stoklund Olesen268e35d2009-08-06 21:54:23 +0000284N: Jakob Stoklund Olesen
285E: stoklund@2pi.dk
286D: Machine code verifier
287D: Blackfin backend
Jakob Stoklund Olesen0a3eb602011-09-19 05:34:10 +0000288D: Fast register allocator
289D: Greedy register allocator
Jakob Stoklund Olesen268e35d2009-08-06 21:54:23 +0000290
Richard Osborne3fa75ff2008-11-07 12:44:36 +0000291N: Richard Osborne
292E: richard@xmos.com
293D: XCore backend
294
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000295N: Devang Patel
296E: dpatel@apple.com
297D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
298D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
Devang Patel5d02a0c2007-09-27 17:32:04 +0000299D: Optimizer improvements, Loop Index Split
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000300
Sandeep Patel774350a2009-08-19 15:07:40 +0000301N: Sandeep Patel
302E: deeppatel1987@gmail.com
303D: ARM calling conventions rewrite, hard float support
304
Bill Wendling24fdd272010-07-19 04:52:56 +0000305N: Wesley Peck
306E: peckw@wesleypeck.com
307W: http://wesleypeck.com/
308D: MicroBlaze backend
309
Francois Picheta4a16712011-07-15 11:26:11 +0000310N: Francois Pichet
311E: pichet2000@gmail.com
312D: MSVC support
313
Misha Brukmanb7206e72004-05-06 16:53:18 +0000314N: Vladimir Prus
Vladimir Prus1100eea2006-05-16 05:36:15 +0000315W: http://vladimir_prus.blogspot.com
Misha Brukmanb7206e72004-05-06 16:53:18 +0000316E: ghost@cs.msu.su
Misha Brukman9cd94d72004-06-25 13:37:03 +0000317D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
Misha Brukmanb7206e72004-05-06 16:53:18 +0000318
Anton Korobeynikovaf2d3792007-03-21 21:45:25 +0000319N: Roman Samoilov
320E: roman@codedgers.com
321D: MSIL backend
322
Duncan Sandsef476fd2007-03-05 09:21:11 +0000323N: Duncan Sands
324E: baldrick@free.fr
Duncan Sands6654ff22010-08-29 04:22:35 +0000325D: Ada support in llvm-gcc
326D: Dragonegg plugin
327D: Exception handling improvements
328D: Type legalizer rewrite
Duncan Sandsef476fd2007-03-05 09:21:11 +0000329
Misha Brukmanb2961602003-09-22 21:56:08 +0000330N: Ruchira Sasanka
331E: sasanka@uiuc.edu
332D: Graph coloring register allocator for the Sparc64 backend
333
Arnold Schwaighofer68c84112007-10-11 18:54:49 +0000334N: Arnold Schwaighofer
335E: arnold.schwaighofer@gmail.com
336D: Tail call optimization for the x86 backend
337
Shantonu Sen1a1ee832009-06-14 02:03:17 +0000338N: Shantonu Sen
339E: ssen@apple.com
340D: Miscellaneous bug fixes
341
Misha Brukmanb2961602003-09-22 21:56:08 +0000342N: Anand Shukla
343E: ashukla@cs.uiuc.edu
Misha Brukman2d772142003-10-17 17:28:21 +0000344D: The `paths' pass
Misha Brukmanb2961602003-09-22 21:56:08 +0000345
Bill Wendling24fdd272010-07-19 04:52:56 +0000346N: Michael J. Spencer
347E: bigcheesegs@gmail.com
348D: Shepherding Windows COFF support into MC.
Michael J. Spencerd15e2f72010-12-10 13:44:26 +0000349D: Lots of Windows stuff.
Bill Wendling24fdd272010-07-19 04:52:56 +0000350
Brian Gaeke75920ee2003-11-10 03:05:36 +0000351N: Reid Spencer
Reid Spencer3336aa02006-08-01 16:52:07 +0000352E: rspencer@reidspencer.com
353W: http://reidspencer.com/
Reid Spencer5c18c812007-06-30 06:56:50 +0000354D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
Brian Gaeke75920ee2003-11-10 03:05:36 +0000355
Torok Edwin63c283e2009-05-23 20:40:47 +0000356N: Edwin Torok
Torok Edwin5bfeded2009-05-23 20:19:52 +0000357E: edwintorok@gmail.com
358D: Miscellaneous bug fixes
359
Chris Lattner3363e272005-02-19 17:14:24 +0000360N: Adam Treat
361E: manyoso@yahoo.com
362D: C++ bugs filed, and C++ front-end bug fixes.
363
Lauro Ramos Venancio2d6b4bf2007-05-06 00:41:36 +0000364N: Lauro Ramos Venancio
365E: lauro.venancio@indt.org.br
366D: ARM backend improvements
367D: Thread Local Storage implementation
368
Xerxes Ranbybd594a12009-07-15 13:01:49 +0000369N: Xerxes Ranby
370E: xerxes@zafena.se
371D: Cmake dependency chain and various bug fixes
372
Nadav Rotem02b4bdb2011-10-22 17:51:04 +0000373N: Nadav Rotem
374E: nadav.rotem@intel.com
Nadav Rotem5eebf6f2011-10-22 18:44:51 +0000375D: Vector code generation improvements.
Nadav Rotem02b4bdb2011-10-22 17:51:04 +0000376
Misha Brukmanb2961602003-09-22 21:56:08 +0000377N: Bill Wendling
Bill Wendling24fdd272010-07-19 04:52:56 +0000378E: wendling@apple.com
Bill Wendlinge4261472009-06-11 20:13:35 +0000379D: Bunches of stuff
Bob Wilson27a2dbb2009-06-23 17:03:23 +0000380
381N: Bob Wilson
382E: bob.wilson@acm.org
383D: Advanced SIMD (NEON) support in the ARM backend