CREDITS.TXT revision d15e2f72db3fe3639426fa47fa83fb75ef3f8b16
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: Vladimir Prus
298W: http://vladimir_prus.blogspot.com
299E: ghost@cs.msu.su
300D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
301
302N: Roman Samoilov
303E: roman@codedgers.com
304D: MSIL backend
305
306N: Duncan Sands
307E: baldrick@free.fr
308D: Ada support in llvm-gcc
309D: Dragonegg plugin
310D: Exception handling improvements
311D: Type legalizer rewrite
312
313N: Ruchira Sasanka
314E: sasanka@uiuc.edu
315D: Graph coloring register allocator for the Sparc64 backend
316
317N: Arnold Schwaighofer
318E: arnold.schwaighofer@gmail.com
319D: Tail call optimization for the x86 backend
320
321N: Shantonu Sen
322E: ssen@apple.com
323D: Miscellaneous bug fixes
324
325N: Anand Shukla
326E: ashukla@cs.uiuc.edu
327D: The `paths' pass
328
329N: Michael J. Spencer
330E: bigcheesegs@gmail.com
331D: Shepherding Windows COFF support into MC.
332D: Lots of Windows stuff.
333
334N: Reid Spencer
335E: rspencer@reidspencer.com
336W: http://reidspencer.com/
337D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
338
339N: Edwin Torok
340E: edwintorok@gmail.com
341D: Miscellaneous bug fixes
342
343N: Adam Treat
344E: manyoso@yahoo.com
345D: C++ bugs filed, and C++ front-end bug fixes.
346
347N: Lauro Ramos Venancio
348E: lauro.venancio@indt.org.br
349D: ARM backend improvements
350D: Thread Local Storage implementation
351
352N: Xerxes Ranby
353E: xerxes@zafena.se
354D: Cmake dependency chain and various bug fixes
355
356N: Bill Wendling
357E: wendling@apple.com
358D: Bunches of stuff
359
360N: Bob Wilson
361E: bob.wilson@acm.org
362D: Advanced SIMD (NEON) support in the ARM backend
363
364
365