Rename LLVM_MULTITHREADED define and fix build without threads.
[oota-llvm.git] / CREDITS.TXT
1 This file is a partial list of people who have contributed to the LLVM
2 project.  If you have contributed a patch or made some other contribution to
3 LLVM, please submit a patch to this file to add yourself, and it will be
4 done!
5
6 The list is sorted by surname and formatted to allow easy grepping and
7 beautification 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
12 N: Vikram Adve
13 E: vadve@cs.uiuc.edu
14 W: http://www.cs.uiuc.edu/~vadve/
15 D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
16
17 N: Owen Anderson
18 E: resistor@mac.com
19 D: LCSSA pass and related LoopUnswitch work
20 D: GVNPRE pass, TargetData refactoring, random improvements
21
22 N: Henrik Bach
23 D: MingW Win32 API portability layer
24
25 N: Nate Begeman
26 E: natebegeman@mac.com
27 D: PowerPC backend developer
28 D: Target-independent code generator and analysis improvements
29
30 N: Daniel Berlin
31 E: dberlin@dberlin.org
32 D: ET-Forest implementation.
33 D: Sparse bitmap
34
35 N: David Blaikie
36 E: dblaikie@gmail.com
37 D: General bug fixing/fit & finish, mostly in Clang
38
39 N: Neil Booth
40 E: neil@daikokuya.co.uk
41 D: APFloat implementation.
42
43 N: Misha Brukman
44 E: brukman+llvm@uiuc.edu
45 W: http://misha.brukman.net
46 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
47 D: Incremental bitcode loader
48
49 N: Cameron Buschardt
50 E: buschard@uiuc.edu
51 D: The `mem2reg' pass - promotes values stored in memory to registers
52
53 N: Chandler Carruth
54 E: chandlerc@gmail.com
55 D: LinkTimeOptimizer for Linux, via binutils integration, and C API
56
57 N: Casey Carter
58 E: ccarter@uiuc.edu
59 D: Fixes to the Reassociation pass, various improvement patches
60
61 N: Evan Cheng
62 E: evan.cheng@apple.com
63 D: ARM and X86 backends
64 D: Instruction scheduler improvements
65 D: Register allocator improvements
66 D: Loop optimizer improvements
67 D: Target-independent code generator improvements
68
69 N: Dan Villiom Podlaski Christiansen
70 E: danchr@gmail.com
71 E: danchr@cs.au.dk
72 W: http://villiom.dk
73 D: LLVM Makefile improvements
74 D: Clang diagnostic & driver tweaks
75 S: Aarhus, Denmark
76
77 N: Jeff Cohen
78 E: jeffc@jolt-lang.org
79 W: http://jolt-lang.org
80 D: Native Win32 API portability layer
81
82 N: John T. Criswell
83 E: criswell@uiuc.edu
84 D: Original Autoconf support, documentation improvements, bug fixes
85
86 N: Stefanus Du Toit
87 E: stefanus.dutoit@rapidmind.com
88 D: Bug fixes and minor improvements
89
90 N: Rafael Avila de Espindola
91 E: rafael.espindola@gmail.com
92 D: The ARM backend
93
94 N: Alkis Evlogimenos
95 E: alkis@evlogimenos.com
96 D: Linear scan register allocator, many codegen improvements, Java frontend
97
98 N: Ryan Flynn
99 E: pizza@parseerror.com
100 D: Miscellaneous bug fixes
101
102 N: Brian Gaeke
103 E: gaeke@uiuc.edu
104 W: http://www.students.uiuc.edu/~gaeke/
105 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
106 D: Dynamic trace optimizer
107 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
108
109 N: Nicolas Geoffray
110 E: nicolas.geoffray@lip6.fr
111 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
112 D: PPC backend fixes for Linux
113
114 N: Louis Gerbarg
115 D: Portions of the PowerPC backend
116
117 N: Saem Ghani
118 E: saemghani@gmail.com
119 D: Callgraph class cleanups
120
121 N: Mikhail Glushenkov
122 E: foldr@codedgers.com
123 D: Author of llvmc2
124
125 N: Dan Gohman
126 E: gohman@apple.com
127 D: Miscellaneous bug fixes
128
129 N: David Goodwin
130 E: david@goodwinz.net
131 D: Thumb-2 code generator
132
133 N: David Greene
134 E: greened@obbligato.org
135 D: Miscellaneous bug fixes
136 D: Register allocation refactoring
137
138 N: Gabor Greif
139 E: ggreif@gmail.com
140 D: Improvements for space efficiency
141
142 N: James Grosbach
143 E: grosbach@apple.com
144 D: SjLj exception handling support
145 D: General fixes and improvements for the ARM back-end
146
147 N: Lang Hames
148 E: lhames@gmail.com
149 D: PBQP-based register allocator
150
151 N: Gordon Henriksen
152 E: gordonhenriksen@mac.com
153 D: Pluggable GC support
154 D: C interface
155 D: Ocaml bindings
156
157 N: Raul Fernandes Herbster
158 E: raul@dsc.ufcg.edu.br
159 D: JIT support for ARM
160
161 N: Paolo Invernizzi
162 E: arathorn@fastwebnet.it
163 D: Visual C++ compatibility fixes
164
165 N: Patrick Jenkins
166 E: patjenk@wam.umd.edu
167 D: Nightly Tester
168
169 N: Dale Johannesen
170 E: dalej@apple.com
171 D: ARM constant islands improvements
172 D: Tail merging improvements
173 D: Rewrite X87 back end
174 D: Use APFloat for floating point constants widely throughout compiler
175 D: Implement X87 long double
176
177 N: Brad Jones
178 E: kungfoomaster@nondot.org
179 D: Support for packed types
180
181 N: Rod Kay
182 E: rkay@auroraux.org
183 D: Author of LLVM Ada bindings
184
185 N: Eric Kidd
186 W: http://randomhacks.net/
187 D: llvm-config script
188
189 N: Anton Korobeynikov
190 E: asl@math.spbu.ru
191 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
192 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
193 D: Switch lowering refactoring
194
195 N: Sumant Kowshik
196 E: kowshik@uiuc.edu
197 D: Author of the original C backend
198
199 N: Benjamin Kramer
200 E: benny.kra@gmail.com
201 D: Miscellaneous bug fixes
202
203 N: Christopher Lamb
204 E: christopher.lamb@gmail.com
205 D: aligned load/store support, parts of noalias and restrict support
206 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
207 D: address spaces
208
209 N: Jim Laskey
210 E: jlaskey@apple.com
211 D: Improvements to the PPC backend, instruction scheduling
212 D: Debug and Dwarf implementation
213 D: Auto upgrade mangler
214 D: llvm-gcc4 svn wrangler
215
216 N: Chris Lattner
217 E: sabre@nondot.org
218 W: http://nondot.org/~sabre/
219 D: Primary architect of LLVM
220
221 N: Tanya Lattner (Tanya Brethour)
222 E: tonic@nondot.org
223 W: http://nondot.org/~tonic/
224 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
225 D: Modulo scheduling in the SparcV9 backend
226 D: Release manager (1.7+)
227
228 N: Andrew Lenharth
229 E: alenhar2@cs.uiuc.edu
230 W: http://www.lenharth.org/~andrewl/
231 D: Alpha backend
232 D: Sampling based profiling
233
234 N: Nick Lewycky
235 E: nicholas@mxc.ca
236 D: PredicateSimplifier pass
237
238 N: Bruno Cardoso Lopes
239 E: bruno.cardoso@gmail.com
240 W: http://www.brunocardoso.org
241 D: The Mips backend
242
243 N: Duraid Madina
244 E: duraid@octopus.com.au
245 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
246 D: IA64 backend, BigBlock register allocator
247
248 N: John McCall
249 E: rjmccall@apple.com
250 D: Clang semantic analysis and IR generation
251
252 N: Michael McCracken
253 E: michael.mccracken@gmail.com
254 D: Line number support for llvmgcc
255
256 N: Vladimir Merzliakov
257 E: wanderer@rsu.ru
258 D: Test suite fixes for FreeBSD
259
260 N: Scott Michel
261 E: scottm@aero.org
262 D: Added STI Cell SPU backend.
263
264 N: Takumi Nakamura
265 E: geek4civic@gmail.com
266 E: chapuni@hf.rim.or.jp
267 D: Cygwin and MinGW support.
268 S: Yokohama, Japan
269
270 N: Edward O'Callaghan
271 E: eocallaghan@auroraux.org
272 W: http://www.auroraux.org
273 D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
274 D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
275 D: and error clean ups.
276
277 N: Morten Ofstad
278 E: morten@hue.no
279 D: Visual C++ compatibility fixes
280
281 N: Jakob Stoklund Olesen
282 E: stoklund@2pi.dk
283 D: Machine code verifier
284 D: Blackfin backend
285 D: Fast register allocator
286 D: Greedy register allocator
287
288 N: Richard Osborne
289 E: richard@xmos.com
290 D: XCore backend
291
292 N: Devang Patel
293 E: dpatel@apple.com
294 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
295 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
296 D: Optimizer improvements, Loop Index Split
297
298 N: Sandeep Patel
299 E: deeppatel1987@gmail.com
300 D: ARM calling conventions rewrite, hard float support
301
302 N: Wesley Peck
303 E: peckw@wesleypeck.com
304 W: http://wesleypeck.com/
305 D: MicroBlaze backend
306
307 N: Francois Pichet
308 E: pichet2000@gmail.com
309 D: MSVC support
310
311 N: Vladimir Prus
312 W: http://vladimir_prus.blogspot.com
313 E: ghost@cs.msu.su
314 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
315
316 N: Roman Samoilov
317 E: roman@codedgers.com
318 D: MSIL backend
319
320 N: Duncan Sands
321 E: baldrick@free.fr
322 D: Ada support in llvm-gcc
323 D: Dragonegg plugin
324 D: Exception handling improvements
325 D: Type legalizer rewrite
326
327 N: Ruchira Sasanka
328 E: sasanka@uiuc.edu
329 D: Graph coloring register allocator for the Sparc64 backend
330
331 N: Arnold Schwaighofer
332 E: arnold.schwaighofer@gmail.com
333 D: Tail call optimization for the x86 backend
334
335 N: Shantonu Sen
336 E: ssen@apple.com
337 D: Miscellaneous bug fixes
338
339 N: Anand Shukla
340 E: ashukla@cs.uiuc.edu
341 D: The `paths' pass
342
343 N: Michael J. Spencer
344 E: bigcheesegs@gmail.com
345 D: Shepherding Windows COFF support into MC.
346 D: Lots of Windows stuff.
347
348 N: Reid Spencer
349 E: rspencer@reidspencer.com
350 W: http://reidspencer.com/
351 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
352
353 N: Edwin Torok
354 E: edwintorok@gmail.com
355 D: Miscellaneous bug fixes
356
357 N: Adam Treat
358 E: manyoso@yahoo.com
359 D: C++ bugs filed, and C++ front-end bug fixes.
360
361 N: Lauro Ramos Venancio
362 E: lauro.venancio@indt.org.br
363 D: ARM backend improvements
364 D: Thread Local Storage implementation
365
366 N: Xerxes Ranby
367 E: xerxes@zafena.se
368 D: Cmake dependency chain and various bug fixes
369
370 N: Bill Wendling
371 E: wendling@apple.com
372 D: Bunches of stuff
373
374 N: Bob Wilson
375 E: bob.wilson@acm.org
376 D: Advanced SIMD (NEON) support in the ARM backend