blob: f468cd5ce4ff617398f8c638ad15202bbb16cd2a [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
Hal Finkelf1c42062012-02-29 16:43:11 +000098N: Hal Finkel
99E: hfinkel@anl.gov
100D: Basic-block autovectorization, PowerPC backend improvements
101
Ryan Flynn05e8de72009-07-15 01:32:31 +0000102N: Ryan Flynn
103E: pizza@parseerror.com
104D: Miscellaneous bug fixes
105
Misha Brukmanb2961602003-09-22 21:56:08 +0000106N: Brian Gaeke
107E: gaeke@uiuc.edu
108W: http://www.students.uiuc.edu/~gaeke/
Chris Lattner4e514c12005-12-22 06:09:08 +0000109D: Portions of X86 static and JIT compilers; initial SparcV8 backend
Misha Brukmance07e992009-01-08 16:40:25 +0000110D: Dynamic trace optimizer
Misha Brukman2d772142003-10-17 17:28:21 +0000111D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
Misha Brukmanb2961602003-09-22 21:56:08 +0000112
Nicolas Geoffray45cdf302007-02-27 10:44:42 +0000113N: Nicolas Geoffray
114E: nicolas.geoffray@lip6.fr
115W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
116D: PPC backend fixes for Linux
117
Misha Brukmanf200eee2004-08-05 19:09:47 +0000118N: Louis Gerbarg
119D: Portions of the PowerPC backend
120
Chris Lattner4e514c12005-12-22 06:09:08 +0000121N: Saem Ghani
122E: saemghani@gmail.com
123D: Callgraph class cleanups
124
Anton Korobeynikovf5e941b2008-03-23 08:58:32 +0000125N: Mikhail Glushenkov
126E: foldr@codedgers.com
127D: Author of llvmc2
128
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000129N: Dan Gohman
Dan Gohmancf891f42008-10-21 19:50:00 +0000130E: gohman@apple.com
Dan Gohmanaddccfd2007-02-15 22:05:14 +0000131D: Miscellaneous bug fixes
132
David Goodwin4de77f82009-07-08 17:55:48 +0000133N: David Goodwin
134E: david@goodwinz.net
135D: Thumb-2 code generator
136
David Greene55236d22007-06-08 17:20:08 +0000137N: David Greene
138E: greened@obbligato.org
139D: Miscellaneous bug fixes
140D: Register allocation refactoring
141
Gabor Greifefe65362008-05-10 08:32:32 +0000142N: Gabor Greif
143E: ggreif@gmail.com
144D: Improvements for space efficiency
145
Jim Grosbachbd3c63c2010-07-19 22:04:28 +0000146N: James Grosbach
147E: grosbach@apple.com
148D: SjLj exception handling support
149D: General fixes and improvements for the ARM back-end
Jim Grosbach6083d812011-10-22 18:17:32 +0000150D: MCJIT
151D: ARM integrated assembler and assembly parser
Jim Grosbachbd3c63c2010-07-19 22:04:28 +0000152
Misha Brukmance07e992009-01-08 16:40:25 +0000153N: Lang Hames
154E: lhames@gmail.com
155D: PBQP-based register allocator
156
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000157N: Gordon Henriksen
158E: gordonhenriksen@mac.com
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000159D: Pluggable GC support
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000160D: C interface
Gordon Henriksenfcd78f82007-10-02 18:04:24 +0000161D: Ocaml bindings
Gordon Henriksenbaa2fa52007-09-17 17:04:44 +0000162
Raul Herbster30b0f2f2007-08-29 18:21:29 +0000163N: Raul Fernandes Herbster
164E: raul@dsc.ufcg.edu.br
165D: JIT support for ARM
166
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000167N: Paolo Invernizzi
Misha Brukman309ca692004-10-26 15:55:12 +0000168E: arathorn@fastwebnet.it
Misha Brukmance07e992009-01-08 16:40:25 +0000169D: Visual C++ compatibility fixes
Chris Lattnerf69dcb12004-09-23 04:30:05 +0000170
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000171N: Patrick Jenkins
172E: patjenk@wam.umd.edu
173D: Nightly Tester
174
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000175N: Dale Johannesen
176E: dalej@apple.com
Dale Johannesen82434382007-04-25 00:14:49 +0000177D: ARM constant islands improvements
Dale Johannesenf8ad9552007-07-05 16:56:24 +0000178D: Tail merging improvements
179D: Rewrite X87 back end
Dale Johannesen005ac652007-09-28 18:46:28 +0000180D: Use APFloat for floating point constants widely throughout compiler
181D: Implement X87 long double
Dale Johannesen2fcdf642007-04-24 23:48:30 +0000182
Bill Wendlinge4261472009-06-11 20:13:35 +0000183N: Brad Jones
184E: kungfoomaster@nondot.org
185D: Support for packed types
186
Chris Lattner633a0162009-08-18 17:04:44 +0000187N: Rod Kay
188E: rkay@auroraux.org
189D: Author of LLVM Ada bindings
190
Reid Spencerb195d9d2006-03-23 23:21:29 +0000191N: Eric Kidd
192W: http://randomhacks.net/
193D: llvm-config script
194
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000195N: Anton Korobeynikov
196E: asl@math.spbu.ru
Anton Korobeynikov4d396b12007-05-06 20:33:02 +0000197D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
198D: x86/linux PIC codegen, aliases, regparm/visibility attributes
199D: Switch lowering refactoring
Anton Korobeynikov8f2105b2006-08-01 07:06:00 +0000200
Chris Lattner3acd9182004-10-27 15:54:23 +0000201N: Sumant Kowshik
202E: kowshik@uiuc.edu
203D: Author of the original C backend
204
Benjamin Kramer5aeac052009-08-20 15:20:15 +0000205N: Benjamin Kramer
206E: benny.kra@gmail.com
207D: Miscellaneous bug fixes
208
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000209N: Christopher Lamb
210E: christopher.lamb@gmail.com
Christopher Lamba1eb1552007-08-10 22:22:41 +0000211D: aligned load/store support, parts of noalias and restrict support
212D: vreg subreg infrastructure, X86 codegen improvements based on subregs
Christopher Lamb52cf47e2007-12-11 09:32:07 +0000213D: address spaces
Christopher Lamb2330e4d2007-04-21 08:16:25 +0000214
Chris Lattner4c286c32005-11-29 00:57:06 +0000215N: Jim Laskey
216E: jlaskey@apple.com
217D: Improvements to the PPC backend, instruction scheduling
Jim Laskeyabf41f22006-08-01 09:01:40 +0000218D: Debug and Dwarf implementation
Misha Brukmance07e992009-01-08 16:40:25 +0000219D: Auto upgrade mangler
Jim Laskeyabf41f22006-08-01 09:01:40 +0000220D: llvm-gcc4 svn wrangler
Chris Lattner4c286c32005-11-29 00:57:06 +0000221
Misha Brukmanb2961602003-09-22 21:56:08 +0000222N: Chris Lattner
223E: sabre@nondot.org
224W: http://nondot.org/~sabre/
225D: Primary architect of LLVM
226
Tanya Lattner706a9ca2007-07-02 18:10:52 +0000227N: Tanya Lattner (Tanya Brethour)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000228E: tonic@nondot.org
229W: http://nondot.org/~tonic/
230D: The initial llvm-ar tool, converted regression testsuite to dejagnu
231D: Modulo scheduling in the SparcV9 backend
Tanya Lattnerdf4283c2006-08-09 04:18:09 +0000232D: Release manager (1.7+)
Tanya Lattnerf2dce8d2005-03-22 21:33:19 +0000233
Misha Brukmane9b0a022005-02-14 09:07:23 +0000234N: Andrew Lenharth
235E: alenhar2@cs.uiuc.edu
236W: http://www.lenharth.org/~andrewl/
237D: Alpha backend
Andrew Lenharth63223c92006-04-13 02:05:30 +0000238D: Sampling based profiling
Misha Brukmane9b0a022005-02-14 09:07:23 +0000239
Nick Lewycky97198c92006-08-29 01:42:47 +0000240N: Nick Lewycky
241E: nicholas@mxc.ca
242D: PredicateSimplifier pass
243
Bill Wendlingcb0a6602007-05-31 04:14:28 +0000244N: Bruno Cardoso Lopes
245E: bruno.cardoso@gmail.com
246W: http://www.brunocardoso.org
247D: The Mips backend
248
Duraid Madina735e0ac2005-03-17 18:57:02 +0000249N: Duraid Madina
250E: duraid@octopus.com.au
251W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
Duraid Madina2672a8e2007-06-30 15:47:36 +0000252D: IA64 backend, BigBlock register allocator
Duraid Madina735e0ac2005-03-17 18:57:02 +0000253
John McCall74699fd2011-08-02 01:38:19 +0000254N: John McCall
255E: rjmccall@apple.com
256D: Clang semantic analysis and IR generation
257
Chris Lattner96264702004-11-18 21:04:21 +0000258N: Michael McCracken
259E: michael.mccracken@gmail.com
260D: Line number support for llvmgcc
261
Chris Lattnerb8356b32004-06-25 21:00:10 +0000262N: Vladimir Merzliakov
263E: wanderer@rsu.ru
Misha Brukman323ed352004-09-21 16:54:37 +0000264D: Test suite fixes for FreeBSD
Chris Lattnerb8356b32004-06-25 21:00:10 +0000265
Bill Wendling08f8b332007-12-05 21:26:54 +0000266N: Scott Michel
267E: scottm@aero.org
268D: Added STI Cell SPU backend.
269
NAKAMURA Takumi48026f52010-08-28 20:24:43 +0000270N: Takumi Nakamura
271E: geek4civic@gmail.com
272E: chapuni@hf.rim.or.jp
NAKAMURA Takumifedb3462010-08-28 21:12:51 +0000273D: Cygwin and MinGW support.
NAKAMURA Takumi75418672011-10-29 23:42:14 +0000274D: Win32 tweaks.
NAKAMURA Takumi48026f52010-08-28 20:24:43 +0000275S: Yokohama, Japan
276
Duncan Sandsca6829a2009-06-12 12:52:24 +0000277N: Edward O'Callaghan
278E: eocallaghan@auroraux.org
279W: http://www.auroraux.org
280D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
281D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
282D: and error clean ups.
283
Misha Brukman309ca692004-10-26 15:55:12 +0000284N: Morten Ofstad
285E: morten@hue.no
Misha Brukmance07e992009-01-08 16:40:25 +0000286D: Visual C++ compatibility fixes
Misha Brukman309ca692004-10-26 15:55:12 +0000287
Jakob Stoklund Olesen268e35d2009-08-06 21:54:23 +0000288N: Jakob Stoklund Olesen
289E: stoklund@2pi.dk
290D: Machine code verifier
291D: Blackfin backend
Jakob Stoklund Olesen0a3eb602011-09-19 05:34:10 +0000292D: Fast register allocator
293D: Greedy register allocator
Jakob Stoklund Olesen268e35d2009-08-06 21:54:23 +0000294
Richard Osborne3fa75ff2008-11-07 12:44:36 +0000295N: Richard Osborne
296E: richard@xmos.com
297D: XCore backend
298
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000299N: Devang Patel
300E: dpatel@apple.com
301D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
302D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
Devang Patel5d02a0c2007-09-27 17:32:04 +0000303D: Optimizer improvements, Loop Index Split
Devang Patel1f7a9bc2007-04-24 18:49:33 +0000304
Sandeep Patel774350a2009-08-19 15:07:40 +0000305N: Sandeep Patel
306E: deeppatel1987@gmail.com
307D: ARM calling conventions rewrite, hard float support
308
Bill Wendling24fdd272010-07-19 04:52:56 +0000309N: Wesley Peck
310E: peckw@wesleypeck.com
311W: http://wesleypeck.com/
312D: MicroBlaze backend
313
Francois Picheta4a16712011-07-15 11:26:11 +0000314N: Francois Pichet
315E: pichet2000@gmail.com
316D: MSVC support
317
Misha Brukmanb7206e72004-05-06 16:53:18 +0000318N: Vladimir Prus
Vladimir Prus1100eea2006-05-16 05:36:15 +0000319W: http://vladimir_prus.blogspot.com
Misha Brukmanb7206e72004-05-06 16:53:18 +0000320E: ghost@cs.msu.su
Misha Brukman9cd94d72004-06-25 13:37:03 +0000321D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
Misha Brukmanb7206e72004-05-06 16:53:18 +0000322
Bill Wendlingda253ae2012-03-12 21:12:59 +0000323N: Xerxes Ranby
324E: xerxes@zafena.se
325D: Cmake dependency chain and various bug fixes
326
Chad Rosier33188842012-02-16 18:54:41 +0000327N: Chad Rosier
328E: mcrosier@apple.com
329D: ARM fast-isel improvements
330D: Performance monitoring
331
Bill Wendlingda253ae2012-03-12 21:12:59 +0000332N: Nadav Rotem
333E: nadav.rotem@intel.com
334D: Vector code generation improvements.
335
Anton Korobeynikovaf2d3792007-03-21 21:45:25 +0000336N: Roman Samoilov
337E: roman@codedgers.com
338D: MSIL backend
339
Duncan Sandsef476fd2007-03-05 09:21:11 +0000340N: Duncan Sands
341E: baldrick@free.fr
Duncan Sands6654ff22010-08-29 04:22:35 +0000342D: Ada support in llvm-gcc
343D: Dragonegg plugin
344D: Exception handling improvements
345D: Type legalizer rewrite
Duncan Sandsef476fd2007-03-05 09:21:11 +0000346
Misha Brukmanb2961602003-09-22 21:56:08 +0000347N: Ruchira Sasanka
348E: sasanka@uiuc.edu
349D: Graph coloring register allocator for the Sparc64 backend
350
Arnold Schwaighofer68c84112007-10-11 18:54:49 +0000351N: Arnold Schwaighofer
352E: arnold.schwaighofer@gmail.com
353D: Tail call optimization for the x86 backend
354
Shantonu Sen1a1ee832009-06-14 02:03:17 +0000355N: Shantonu Sen
356E: ssen@apple.com
357D: Miscellaneous bug fixes
358
Misha Brukmanb2961602003-09-22 21:56:08 +0000359N: Anand Shukla
360E: ashukla@cs.uiuc.edu
Misha Brukman2d772142003-10-17 17:28:21 +0000361D: The `paths' pass
Misha Brukmanb2961602003-09-22 21:56:08 +0000362
Bill Wendling24fdd272010-07-19 04:52:56 +0000363N: Michael J. Spencer
364E: bigcheesegs@gmail.com
365D: Shepherding Windows COFF support into MC.
Michael J. Spencerd15e2f72010-12-10 13:44:26 +0000366D: Lots of Windows stuff.
Bill Wendling24fdd272010-07-19 04:52:56 +0000367
Brian Gaeke75920ee2003-11-10 03:05:36 +0000368N: Reid Spencer
Reid Spencer3336aa02006-08-01 16:52:07 +0000369E: rspencer@reidspencer.com
370W: http://reidspencer.com/
Reid Spencer5c18c812007-06-30 06:56:50 +0000371D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
Brian Gaeke75920ee2003-11-10 03:05:36 +0000372
Torok Edwin63c283e2009-05-23 20:40:47 +0000373N: Edwin Torok
Torok Edwin5bfeded2009-05-23 20:19:52 +0000374E: edwintorok@gmail.com
375D: Miscellaneous bug fixes
376
Chris Lattner3363e272005-02-19 17:14:24 +0000377N: Adam Treat
378E: manyoso@yahoo.com
379D: C++ bugs filed, and C++ front-end bug fixes.
380
Lauro Ramos Venancio2d6b4bf2007-05-06 00:41:36 +0000381N: Lauro Ramos Venancio
382E: lauro.venancio@indt.org.br
383D: ARM backend improvements
384D: Thread Local Storage implementation
385
Misha Brukmanb2961602003-09-22 21:56:08 +0000386N: Bill Wendling
Bill Wendling24fdd272010-07-19 04:52:56 +0000387E: wendling@apple.com
Bill Wendling7d4deaa2012-02-16 10:25:07 +0000388D: Exception handling
Bill Wendlinge4261472009-06-11 20:13:35 +0000389D: Bunches of stuff
Bob Wilson27a2dbb2009-06-23 17:03:23 +0000390
391N: Bob Wilson
392E: bob.wilson@acm.org
393D: Advanced SIMD (NEON) support in the ARM backend