blob: ef471b0887ee05a3161753cc9bcccb8c6deeb670 [file] [log] [blame]
Chris Lattner68095d72005-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 Brukman572f2642009-01-08 16:40:25 +00003LLVM, please submit a patch to this file to add yourself, and it will be
Chris Lattner68095d72005-08-02 22:10:21 +00004done!
Misha Brukman9672a0b2003-09-22 21:56:08 +00005
Bill Wendling2ec94e42009-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 Brukman9672a0b2003-09-22 21:56:08 +000010
Anton Korobeynikovca5e8bb2010-12-10 11:49:22 +000011
Misha Brukman9672a0b2003-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 Andersone58e5082006-05-15 05:13:07 +000017N: Owen Anderson
18E: resistor@mac.com
Owen Anderson00e7e322007-07-03 02:28:17 +000019D: LCSSA pass and related LoopUnswitch work
20D: GVNPRE pass, TargetData refactoring, random improvements
Owen Andersone58e5082006-05-15 05:13:07 +000021
Chris Lattner95447662004-09-23 04:30:05 +000022N: Henrik Bach
23D: MingW Win32 API portability layer
24
Misha Brukman72b2a272004-08-05 19:09:47 +000025N: Nate Begeman
26E: natebegeman@mac.com
Nate Begeman98f844f2006-04-11 05:47:45 +000027D: PowerPC backend developer
28D: Target-independent code generator and analysis improvements
Misha Brukman72b2a272004-08-05 19:09:47 +000029
Chris Lattner7f91e442006-01-08 08:25:38 +000030N: Daniel Berlin
31E: dberlin@dberlin.org
32D: ET-Forest implementation.
Daniel Berline80ca9c2007-09-09 01:10:40 +000033D: Sparse bitmap
Chris Lattner7f91e442006-01-08 08:25:38 +000034
David Blaikie4fe44b42011-09-08 05:32:49 +000035N: David Blaikie
36E: dblaikie@gmail.com
37D: General bug fixing/fit & finish, mostly in Clang
38
Neil Booth28737112007-08-25 00:31:24 +000039N: Neil Booth
40E: neil@daikokuya.co.uk
Misha Brukman572f2642009-01-08 16:40:25 +000041D: APFloat implementation.
Neil Booth28737112007-08-25 00:31:24 +000042
Misha Brukman9672a0b2003-09-22 21:56:08 +000043N: Misha Brukman
Misha Brukman1a1a6112003-10-17 17:28:21 +000044E: brukman+llvm@uiuc.edu
Misha Brukman9672a0b2003-09-22 21:56:08 +000045W: http://misha.brukman.net
Misha Brukman72b2a272004-08-05 19:09:47 +000046D: Portions of X86 and Sparc JIT compilers, PowerPC backend
Duncan Sandse9da6db2010-09-29 20:09:55 +000047D: Incremental bitcode loader
Misha Brukman9672a0b2003-09-22 21:56:08 +000048
49N: Cameron Buschardt
Misha Brukman1a1a6112003-10-17 17:28:21 +000050E: buschard@uiuc.edu
Misha Brukmanc265fdc2003-10-20 03:59:05 +000051D: The `mem2reg' pass - promotes values stored in memory to registers
Misha Brukman9672a0b2003-09-22 21:56:08 +000052
Chandler Carruth52b15452007-01-08 03:10:00 +000053N: Chandler Carruth
54E: chandlerc@gmail.com
55D: LinkTimeOptimizer for Linux, via binutils integration, and C API
56
Misha Brukman9672a0b2003-09-22 21:56:08 +000057N: Casey Carter
Misha Brukman1a1a6112003-10-17 17:28:21 +000058E: ccarter@uiuc.edu
Misha Brukman9672a0b2003-09-22 21:56:08 +000059D: Fixes to the Reassociation pass, various improvement patches
60
Chris Lattnerd8bc7782005-11-29 00:57:06 +000061N: Evan Cheng
62E: evan.cheng@apple.com
Evan Cheng0c182a42007-02-15 22:26:28 +000063D: ARM and X86 backends
Evan Cheng33fe29e2006-04-12 21:28:14 +000064D: Instruction scheduler improvements
Evan Cheng100984c2007-05-07 17:58:13 +000065D: Register allocator improvements
Evan Cheng33fe29e2006-04-12 21:28:14 +000066D: Loop optimizer improvements
67D: Target-independent code generator improvements
Chris Lattnerd8bc7782005-11-29 00:57:06 +000068
Dan Villiom Podlaski Christiansenfaad4162009-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 Lattner95447662004-09-23 04:30:05 +000077N: Jeff Cohen
Jeff Cohenb1272672005-05-08 01:07:48 +000078E: jeffc@jolt-lang.org
79W: http://jolt-lang.org
Chris Lattner95447662004-09-23 04:30:05 +000080D: Native Win32 API portability layer
81
Misha Brukman1a1a6112003-10-17 17:28:21 +000082N: John T. Criswell
83E: criswell@uiuc.edu
John Criswell1e0b9cb2007-06-29 18:24:05 +000084D: Original Autoconf support, documentation improvements, bug fixes
Misha Brukman1a1a6112003-10-17 17:28:21 +000085
Anshuman Dasgupta47628b22012-04-12 15:17:35 +000086N: Anshuman Dasgupta
87E: adasgupt@codeaurora.org
88D: Deterministic finite automaton based infrastructure for VLIW packetization
89
Stefanus Du Toit6c7917a2009-04-03 21:41:52 +000090N: Stefanus Du Toit
91E: stefanus.dutoit@rapidmind.com
92D: Bug fixes and minor improvements
93
Rafael Espindolab37e4102006-05-14 20:29:25 +000094N: Rafael Avila de Espindola
95E: rafael.espindola@gmail.com
96D: The ARM backend
97
Chris Lattner29cf9a32004-09-23 04:36:01 +000098N: Alkis Evlogimenos
Alkis Evlogimenos04da4252004-09-23 04:39:30 +000099E: alkis@evlogimenos.com
Chris Lattner29cf9a32004-09-23 04:36:01 +0000100D: Linear scan register allocator, many codegen improvements, Java frontend
101
Hal Finkel230e8702012-02-29 16:43:11 +0000102N: Hal Finkel
103E: hfinkel@anl.gov
104D: Basic-block autovectorization, PowerPC backend improvements
105
Ryan Flynn68170402009-07-15 01:32:31 +0000106N: Ryan Flynn
107E: pizza@parseerror.com
108D: Miscellaneous bug fixes
109
Misha Brukman9672a0b2003-09-22 21:56:08 +0000110N: Brian Gaeke
111E: gaeke@uiuc.edu
112W: http://www.students.uiuc.edu/~gaeke/
Chris Lattnerf933bb52005-12-22 06:09:08 +0000113D: Portions of X86 static and JIT compilers; initial SparcV8 backend
Misha Brukman572f2642009-01-08 16:40:25 +0000114D: Dynamic trace optimizer
Misha Brukman1a1a6112003-10-17 17:28:21 +0000115D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
Misha Brukman9672a0b2003-09-22 21:56:08 +0000116
Nicolas Geoffray19ec8a92007-02-27 10:44:42 +0000117N: Nicolas Geoffray
118E: nicolas.geoffray@lip6.fr
119W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
120D: PPC backend fixes for Linux
121
Misha Brukman72b2a272004-08-05 19:09:47 +0000122N: Louis Gerbarg
123D: Portions of the PowerPC backend
124
Chris Lattnerf933bb52005-12-22 06:09:08 +0000125N: Saem Ghani
126E: saemghani@gmail.com
127D: Callgraph class cleanups
128
Anton Korobeynikov479c8382008-03-23 08:58:32 +0000129N: Mikhail Glushenkov
130E: foldr@codedgers.com
131D: Author of llvmc2
132
Dan Gohmanc95f42b2007-02-15 22:05:14 +0000133N: Dan Gohman
Dan Gohmanc7d4f282008-10-21 19:50:00 +0000134E: gohman@apple.com
Dan Gohmanc95f42b2007-02-15 22:05:14 +0000135D: Miscellaneous bug fixes
136
David Goodwinb8413762009-07-08 17:55:48 +0000137N: David Goodwin
138E: david@goodwinz.net
139D: Thumb-2 code generator
140
David Greenea0bb97c82007-06-08 17:20:08 +0000141N: David Greene
142E: greened@obbligato.org
143D: Miscellaneous bug fixes
144D: Register allocation refactoring
145
Gabor Greiff6caff662008-05-10 08:32:32 +0000146N: Gabor Greif
147E: ggreif@gmail.com
148D: Improvements for space efficiency
149
Jim Grosbachbe2622f2010-07-19 22:04:28 +0000150N: James Grosbach
151E: grosbach@apple.com
152D: SjLj exception handling support
153D: General fixes and improvements for the ARM back-end
Jim Grosbachdfc072d2011-10-22 18:17:32 +0000154D: MCJIT
155D: ARM integrated assembler and assembly parser
Jim Grosbachbe2622f2010-07-19 22:04:28 +0000156
Misha Brukman572f2642009-01-08 16:40:25 +0000157N: Lang Hames
158E: lhames@gmail.com
159D: PBQP-based register allocator
160
Gordon Henriksen8f0e2f22007-09-17 17:04:44 +0000161N: Gordon Henriksen
162E: gordonhenriksen@mac.com
Gordon Henriksena3fc4122007-10-02 18:04:24 +0000163D: Pluggable GC support
Gordon Henriksen8f0e2f22007-09-17 17:04:44 +0000164D: C interface
Gordon Henriksena3fc4122007-10-02 18:04:24 +0000165D: Ocaml bindings
Gordon Henriksen8f0e2f22007-09-17 17:04:44 +0000166
Raul Herbsterf1aaa802007-08-29 18:21:29 +0000167N: Raul Fernandes Herbster
168E: raul@dsc.ufcg.edu.br
169D: JIT support for ARM
170
Chris Lattner95447662004-09-23 04:30:05 +0000171N: Paolo Invernizzi
Misha Brukman0c7e1422004-10-26 15:55:12 +0000172E: arathorn@fastwebnet.it
Misha Brukman572f2642009-01-08 16:40:25 +0000173D: Visual C++ compatibility fixes
Chris Lattner95447662004-09-23 04:30:05 +0000174
Tanya Lattnerb112baf2006-08-09 04:18:09 +0000175N: Patrick Jenkins
176E: patjenk@wam.umd.edu
177D: Nightly Tester
178
Dale Johannesen1d0d1382007-04-24 23:48:30 +0000179N: Dale Johannesen
180E: dalej@apple.com
Dale Johannesen78dd0b22007-04-25 00:14:49 +0000181D: ARM constant islands improvements
Dale Johannesen5892cfd2007-07-05 16:56:24 +0000182D: Tail merging improvements
183D: Rewrite X87 back end
Dale Johannesen03d4ad92007-09-28 18:46:28 +0000184D: Use APFloat for floating point constants widely throughout compiler
185D: Implement X87 long double
Dale Johannesen1d0d1382007-04-24 23:48:30 +0000186
Bill Wendling3b022b12009-06-11 20:13:35 +0000187N: Brad Jones
188E: kungfoomaster@nondot.org
189D: Support for packed types
190
Chris Lattner3ac8dc72009-08-18 17:04:44 +0000191N: Rod Kay
192E: rkay@auroraux.org
193D: Author of LLVM Ada bindings
194
Reid Spencer972bea52006-03-23 23:21:29 +0000195N: Eric Kidd
196W: http://randomhacks.net/
197D: llvm-config script
198
Anton Korobeynikov8e5425f2006-08-01 07:06:00 +0000199N: Anton Korobeynikov
200E: asl@math.spbu.ru
Anton Korobeynikova400e392007-05-06 20:33:02 +0000201D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
202D: x86/linux PIC codegen, aliases, regparm/visibility attributes
203D: Switch lowering refactoring
Anton Korobeynikov8e5425f2006-08-01 07:06:00 +0000204
Chris Lattnercebf2bbe2004-10-27 15:54:23 +0000205N: Sumant Kowshik
206E: kowshik@uiuc.edu
207D: Author of the original C backend
208
Benjamin Kramer33599112009-08-20 15:20:15 +0000209N: Benjamin Kramer
210E: benny.kra@gmail.com
211D: Miscellaneous bug fixes
212
Christopher Lambbff50202007-04-21 08:16:25 +0000213N: Christopher Lamb
214E: christopher.lamb@gmail.com
Christopher Lamb44e79f82007-08-10 22:22:41 +0000215D: aligned load/store support, parts of noalias and restrict support
216D: vreg subreg infrastructure, X86 codegen improvements based on subregs
Christopher Lamb595798f2007-12-11 09:32:07 +0000217D: address spaces
Christopher Lambbff50202007-04-21 08:16:25 +0000218
Chris Lattnerd8bc7782005-11-29 00:57:06 +0000219N: Jim Laskey
220E: jlaskey@apple.com
221D: Improvements to the PPC backend, instruction scheduling
Jim Laskey300f1972006-08-01 09:01:40 +0000222D: Debug and Dwarf implementation
Misha Brukman572f2642009-01-08 16:40:25 +0000223D: Auto upgrade mangler
Jim Laskey300f1972006-08-01 09:01:40 +0000224D: llvm-gcc4 svn wrangler
Chris Lattnerd8bc7782005-11-29 00:57:06 +0000225
Misha Brukman9672a0b2003-09-22 21:56:08 +0000226N: Chris Lattner
227E: sabre@nondot.org
228W: http://nondot.org/~sabre/
229D: Primary architect of LLVM
230
Tanya Lattner55183452007-07-02 18:10:52 +0000231N: Tanya Lattner (Tanya Brethour)
Tanya Lattner8b953a12005-03-22 21:33:19 +0000232E: tonic@nondot.org
233W: http://nondot.org/~tonic/
234D: The initial llvm-ar tool, converted regression testsuite to dejagnu
235D: Modulo scheduling in the SparcV9 backend
Tanya Lattnerb112baf2006-08-09 04:18:09 +0000236D: Release manager (1.7+)
Tanya Lattner8b953a12005-03-22 21:33:19 +0000237
Misha Brukmane71cbb82005-02-14 09:07:23 +0000238N: Andrew Lenharth
239E: alenhar2@cs.uiuc.edu
240W: http://www.lenharth.org/~andrewl/
241D: Alpha backend
Andrew Lenharth01ba3822006-04-13 02:05:30 +0000242D: Sampling based profiling
Misha Brukmane71cbb82005-02-14 09:07:23 +0000243
Nick Lewycky0b4e05a2006-08-29 01:42:47 +0000244N: Nick Lewycky
245E: nicholas@mxc.ca
246D: PredicateSimplifier pass
247
Bill Wendling96114682007-05-31 04:14:28 +0000248N: Bruno Cardoso Lopes
249E: bruno.cardoso@gmail.com
250W: http://www.brunocardoso.org
251D: The Mips backend
252
Duraid Madinabf013702005-03-17 18:57:02 +0000253N: Duraid Madina
254E: duraid@octopus.com.au
255W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
Duraid Madina097bb1b2007-06-30 15:47:36 +0000256D: IA64 backend, BigBlock register allocator
Duraid Madinabf013702005-03-17 18:57:02 +0000257
John McCallc26ea5a2011-08-02 01:38:19 +0000258N: John McCall
259E: rjmccall@apple.com
260D: Clang semantic analysis and IR generation
261
Chris Lattneree21a972004-11-18 21:04:21 +0000262N: Michael McCracken
263E: michael.mccracken@gmail.com
264D: Line number support for llvmgcc
265
Chris Lattner3c53efa2004-06-25 21:00:10 +0000266N: Vladimir Merzliakov
267E: wanderer@rsu.ru
Misha Brukman62041802004-09-21 16:54:37 +0000268D: Test suite fixes for FreeBSD
Chris Lattner3c53efa2004-06-25 21:00:10 +0000269
Bill Wendlingdc71f082007-12-05 21:26:54 +0000270N: Scott Michel
271E: scottm@aero.org
272D: Added STI Cell SPU backend.
273
NAKAMURA Takumid1ca3e12010-08-28 20:24:43 +0000274N: Takumi Nakamura
275E: geek4civic@gmail.com
276E: chapuni@hf.rim.or.jp
NAKAMURA Takumi64be20e2010-08-28 21:12:51 +0000277D: Cygwin and MinGW support.
NAKAMURA Takumif7af62e2011-10-29 23:42:14 +0000278D: Win32 tweaks.
NAKAMURA Takumid1ca3e12010-08-28 20:24:43 +0000279S: Yokohama, Japan
280
Duncan Sandsc5233932009-06-12 12:52:24 +0000281N: Edward O'Callaghan
282E: eocallaghan@auroraux.org
283W: http://www.auroraux.org
284D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
285D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
286D: and error clean ups.
287
Misha Brukman0c7e1422004-10-26 15:55:12 +0000288N: Morten Ofstad
289E: morten@hue.no
Misha Brukman572f2642009-01-08 16:40:25 +0000290D: Visual C++ compatibility fixes
Misha Brukman0c7e1422004-10-26 15:55:12 +0000291
Jakob Stoklund Olesen8166ca32009-08-06 21:54:23 +0000292N: Jakob Stoklund Olesen
293E: stoklund@2pi.dk
294D: Machine code verifier
295D: Blackfin backend
Jakob Stoklund Olesen10acf352011-09-19 05:34:10 +0000296D: Fast register allocator
297D: Greedy register allocator
Jakob Stoklund Olesen8166ca32009-08-06 21:54:23 +0000298
Richard Osborne75edafc2008-11-07 12:44:36 +0000299N: Richard Osborne
300E: richard@xmos.com
301D: XCore backend
302
Devang Patelff508e22007-04-24 18:49:33 +0000303N: Devang Patel
304E: dpatel@apple.com
305D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
306D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
Devang Patel11611f82007-09-27 17:32:04 +0000307D: Optimizer improvements, Loop Index Split
Devang Patelff508e22007-04-24 18:49:33 +0000308
Sandeep Patelf2c313a2009-08-19 15:07:40 +0000309N: Sandeep Patel
310E: deeppatel1987@gmail.com
311D: ARM calling conventions rewrite, hard float support
312
Bill Wendling8ee29d12010-07-19 04:52:56 +0000313N: Wesley Peck
314E: peckw@wesleypeck.com
315W: http://wesleypeck.com/
316D: MicroBlaze backend
317
Francois Pichetb9219582011-07-15 11:26:11 +0000318N: Francois Pichet
319E: pichet2000@gmail.com
320D: MSVC support
321
Misha Brukmanafdd8a02004-05-06 16:53:18 +0000322N: Vladimir Prus
Vladimir Prus1f01aa02006-05-16 05:36:15 +0000323W: http://vladimir_prus.blogspot.com
Misha Brukmanafdd8a02004-05-06 16:53:18 +0000324E: ghost@cs.msu.su
Misha Brukman7ce85362004-06-25 13:37:03 +0000325D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
Misha Brukmanafdd8a02004-05-06 16:53:18 +0000326
Bill Wendling2ff60ca2012-03-12 21:12:59 +0000327N: Xerxes Ranby
328E: xerxes@zafena.se
329D: Cmake dependency chain and various bug fixes
330
Chad Rosier42f96b92012-02-16 18:54:41 +0000331N: Chad Rosier
332E: mcrosier@apple.com
333D: ARM fast-isel improvements
334D: Performance monitoring
335
Bill Wendling2ff60ca2012-03-12 21:12:59 +0000336N: Nadav Rotem
337E: nadav.rotem@intel.com
338D: Vector code generation improvements.
339
Anton Korobeynikov91549ce2007-03-21 21:45:25 +0000340N: Roman Samoilov
341E: roman@codedgers.com
342D: MSIL backend
343
Duncan Sandsb4086b62007-03-05 09:21:11 +0000344N: Duncan Sands
345E: baldrick@free.fr
Duncan Sands77b9df22010-08-29 04:22:35 +0000346D: Ada support in llvm-gcc
347D: Dragonegg plugin
348D: Exception handling improvements
349D: Type legalizer rewrite
Duncan Sandsb4086b62007-03-05 09:21:11 +0000350
Misha Brukman9672a0b2003-09-22 21:56:08 +0000351N: Ruchira Sasanka
352E: sasanka@uiuc.edu
353D: Graph coloring register allocator for the Sparc64 backend
354
Arnold Schwaighofer29cfef52007-10-11 18:54:49 +0000355N: Arnold Schwaighofer
356E: arnold.schwaighofer@gmail.com
357D: Tail call optimization for the x86 backend
358
Shantonu Senf4ba1e62009-06-14 02:03:17 +0000359N: Shantonu Sen
360E: ssen@apple.com
361D: Miscellaneous bug fixes
362
Misha Brukman9672a0b2003-09-22 21:56:08 +0000363N: Anand Shukla
364E: ashukla@cs.uiuc.edu
Misha Brukman1a1a6112003-10-17 17:28:21 +0000365D: The `paths' pass
Misha Brukman9672a0b2003-09-22 21:56:08 +0000366
Bill Wendling8ee29d12010-07-19 04:52:56 +0000367N: Michael J. Spencer
368E: bigcheesegs@gmail.com
369D: Shepherding Windows COFF support into MC.
Michael J. Spencer7ed78082010-12-10 13:44:26 +0000370D: Lots of Windows stuff.
Bill Wendling8ee29d12010-07-19 04:52:56 +0000371
Brian Gaekecac06a52003-11-10 03:05:36 +0000372N: Reid Spencer
Reid Spencerca1e7592006-08-01 16:52:07 +0000373E: rspencer@reidspencer.com
374W: http://reidspencer.com/
Reid Spencer6dfece92007-06-30 06:56:50 +0000375D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
Brian Gaekecac06a52003-11-10 03:05:36 +0000376
Torok Edwin86ced8a2009-05-23 20:40:47 +0000377N: Edwin Torok
Torok Edwin0b6513d2009-05-23 20:19:52 +0000378E: edwintorok@gmail.com
379D: Miscellaneous bug fixes
380
Chris Lattnerfdff9e72005-02-19 17:14:24 +0000381N: Adam Treat
382E: manyoso@yahoo.com
383D: C++ bugs filed, and C++ front-end bug fixes.
384
Lauro Ramos Venancio941fd972007-05-06 00:41:36 +0000385N: Lauro Ramos Venancio
386E: lauro.venancio@indt.org.br
387D: ARM backend improvements
388D: Thread Local Storage implementation
389
Misha Brukman9672a0b2003-09-22 21:56:08 +0000390N: Bill Wendling
Bill Wendling8ee29d12010-07-19 04:52:56 +0000391E: wendling@apple.com
Bill Wendling08f02af2012-02-16 10:25:07 +0000392D: Exception handling
Bill Wendling3b022b12009-06-11 20:13:35 +0000393D: Bunches of stuff
Bob Wilsonbc4c6a02009-06-23 17:03:23 +0000394
395N: Bob Wilson
396E: bob.wilson@acm.org
397D: Advanced SIMD (NEON) support in the ARM backend