Support: More BlockFrequencyTest => BranchProbabilityTest
[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), snail-mail address
9 (S), and (I) IRC handle.
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, DataLayout refactoring, random improvements
21
22 N: Henrik Bach
23 D: MingW Win32 API portability layer
24
25 N: Aaron Ballman
26 E: aaron@aaronballman.com
27 D: __declspec attributes, Windows support, general bug fixing
28
29 N: Nate Begeman
30 E: natebegeman@mac.com
31 D: PowerPC backend developer
32 D: Target-independent code generator and analysis improvements
33
34 N: Daniel Berlin
35 E: dberlin@dberlin.org
36 D: ET-Forest implementation.
37 D: Sparse bitmap
38
39 N: David Blaikie
40 E: dblaikie@gmail.com
41 D: General bug fixing/fit & finish, mostly in Clang
42
43 N: Neil Booth
44 E: neil@daikokuya.co.uk
45 D: APFloat implementation.
46
47 N: Misha Brukman
48 E: brukman+llvm@uiuc.edu
49 W: http://misha.brukman.net
50 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
51 D: Incremental bitcode loader
52
53 N: Cameron Buschardt
54 E: buschard@uiuc.edu
55 D: The `mem2reg' pass - promotes values stored in memory to registers
56
57 N: Brendon Cahoon
58 E: bcahoon@codeaurora.org
59 D: Loop unrolling with run-time trip counts.
60
61 N: Chandler Carruth
62 E: chandlerc@gmail.com
63 E: chandlerc@google.com
64 D: Hashing algorithms and interfaces
65 D: Inline cost analysis
66 D: Machine block placement pass
67 D: SROA
68
69 N: Casey Carter
70 E: ccarter@uiuc.edu
71 D: Fixes to the Reassociation pass, various improvement patches
72
73 N: Evan Cheng
74 E: evan.cheng@apple.com
75 D: ARM and X86 backends
76 D: Instruction scheduler improvements
77 D: Register allocator improvements
78 D: Loop optimizer improvements
79 D: Target-independent code generator improvements
80
81 N: Dan Villiom Podlaski Christiansen
82 E: danchr@gmail.com
83 E: danchr@cs.au.dk
84 W: http://villiom.dk
85 D: LLVM Makefile improvements
86 D: Clang diagnostic & driver tweaks
87 S: Aarhus, Denmark
88
89 N: Jeff Cohen
90 E: jeffc@jolt-lang.org
91 W: http://jolt-lang.org
92 D: Native Win32 API portability layer
93
94 N: John T. Criswell
95 E: criswell@uiuc.edu
96 D: Original Autoconf support, documentation improvements, bug fixes
97
98 N: Anshuman Dasgupta
99 E: adasgupt@codeaurora.org
100 D: Deterministic finite automaton based infrastructure for VLIW packetization
101
102 N: Stefanus Du Toit
103 E: stefanus.du.toit@intel.com
104 D: Bug fixes and minor improvements
105
106 N: Rafael Avila de Espindola
107 E: rafael.espindola@gmail.com
108 D: The ARM backend
109
110 N: Alkis Evlogimenos
111 E: alkis@evlogimenos.com
112 D: Linear scan register allocator, many codegen improvements, Java frontend
113
114 N: Hal Finkel
115 E: hfinkel@anl.gov
116 D: Basic-block autovectorization, PowerPC backend improvements
117
118 N: Ryan Flynn
119 E: pizza@parseerror.com
120 D: Miscellaneous bug fixes
121
122 N: Brian Gaeke
123 E: gaeke@uiuc.edu
124 W: http://www.students.uiuc.edu/~gaeke/
125 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
126 D: Dynamic trace optimizer
127 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
128
129 N: Nicolas Geoffray
130 E: nicolas.geoffray@lip6.fr
131 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
132 D: PPC backend fixes for Linux
133
134 N: Louis Gerbarg
135 E: lgg@apple.com
136 D: Portions of the PowerPC backend
137
138 N: Saem Ghani
139 E: saemghani@gmail.com
140 D: Callgraph class cleanups
141
142 N: Mikhail Glushenkov
143 E: foldr@codedgers.com
144 D: Author of llvmc2
145
146 N: Dan Gohman
147 E: dan433584@gmail.com
148 D: Miscellaneous bug fixes
149
150 N: David Goodwin
151 E: david@goodwinz.net
152 D: Thumb-2 code generator
153
154 N: David Greene
155 E: greened@obbligato.org
156 D: Miscellaneous bug fixes
157 D: Register allocation refactoring
158
159 N: Gabor Greif
160 E: ggreif@gmail.com
161 D: Improvements for space efficiency
162
163 N: James Grosbach
164 E: grosbach@apple.com
165 D: SjLj exception handling support
166 D: General fixes and improvements for the ARM back-end
167 D: MCJIT
168 D: ARM integrated assembler and assembly parser
169
170 N: Lang Hames
171 E: lhames@gmail.com
172 D: PBQP-based register allocator
173
174 N: Gordon Henriksen
175 E: gordonhenriksen@mac.com
176 D: Pluggable GC support
177 D: C interface
178 D: Ocaml bindings
179
180 N: Raul Fernandes Herbster
181 E: raul@dsc.ufcg.edu.br
182 D: JIT support for ARM
183
184 N: Paolo Invernizzi
185 E: arathorn@fastwebnet.it
186 D: Visual C++ compatibility fixes
187
188 N: Patrick Jenkins
189 E: patjenk@wam.umd.edu
190 D: Nightly Tester
191
192 N: Dale Johannesen
193 E: dalej@apple.com
194 D: ARM constant islands improvements
195 D: Tail merging improvements
196 D: Rewrite X87 back end
197 D: Use APFloat for floating point constants widely throughout compiler
198 D: Implement X87 long double
199
200 N: Brad Jones
201 E: kungfoomaster@nondot.org
202 D: Support for packed types
203
204 N: Rod Kay
205 E: rkay@auroraux.org
206 D: Author of LLVM Ada bindings
207
208 N: Eric Kidd
209 W: http://randomhacks.net/
210 D: llvm-config script
211
212 N: Anton Korobeynikov
213 E: asl@math.spbu.ru
214 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
215 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
216 D: Switch lowering refactoring
217
218 N: Sumant Kowshik
219 E: kowshik@uiuc.edu
220 D: Author of the original C backend
221
222 N: Benjamin Kramer
223 E: benny.kra@gmail.com
224 D: Miscellaneous bug fixes
225
226 N: Sundeep Kushwaha
227 E: sundeepk@codeaurora.org
228 D: Implemented DFA-based target independent VLIW packetizer
229
230 N: Christopher Lamb
231 E: christopher.lamb@gmail.com
232 D: aligned load/store support, parts of noalias and restrict support
233 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
234 D: address spaces
235
236 N: Jim Laskey
237 E: jlaskey@apple.com
238 D: Improvements to the PPC backend, instruction scheduling
239 D: Debug and Dwarf implementation
240 D: Auto upgrade mangler
241 D: llvm-gcc4 svn wrangler
242
243 N: Chris Lattner
244 E: sabre@nondot.org
245 W: http://nondot.org/~sabre/
246 D: Primary architect of LLVM
247
248 N: Tanya Lattner (Tanya Brethour)
249 E: tonic@nondot.org
250 W: http://nondot.org/~tonic/
251 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
252 D: Modulo scheduling in the SparcV9 backend
253 D: Release manager (1.7+)
254
255 N: Sylvestre Ledru
256 E: sylvestre@debian.org
257 W: http://sylvestre.ledru.info/
258 W: http://llvm.org/apt/
259 D: Debian and Ubuntu packaging
260 D: Continuous integration with jenkins
261
262 N: Andrew Lenharth
263 E: alenhar2@cs.uiuc.edu
264 W: http://www.lenharth.org/~andrewl/
265 D: Alpha backend
266 D: Sampling based profiling
267
268 N: Nick Lewycky
269 E: nicholas@mxc.ca
270 D: PredicateSimplifier pass
271
272 N: Tony Linthicum, et. al.
273 E: tlinth@codeaurora.org
274 D: Backend for Qualcomm's Hexagon VLIW processor.
275
276 N: Bruno Cardoso Lopes
277 E: bruno.cardoso@gmail.com
278 W: http://www.brunocardoso.org
279 D: The Mips backend
280
281 N: Duraid Madina
282 E: duraid@octopus.com.au
283 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
284 D: IA64 backend, BigBlock register allocator
285
286 N: John McCall
287 E: rjmccall@apple.com
288 D: Clang semantic analysis and IR generation
289
290 N: Michael McCracken
291 E: michael.mccracken@gmail.com
292 D: Line number support for llvmgcc
293
294 N: Vladimir Merzliakov
295 E: wanderer@rsu.ru
296 D: Test suite fixes for FreeBSD
297
298 N: Scott Michel
299 E: scottm@aero.org
300 D: Added STI Cell SPU backend.
301
302 N: Kai Nacke
303 E: kai@redstar.de
304 D: Support for implicit TLS model used with MS VC runtime
305 D: Dumping of Win64 EH structures
306
307 N: Takumi Nakamura
308 E: geek4civic@gmail.com
309 E: chapuni@hf.rim.or.jp
310 D: Cygwin and MinGW support.
311 D: Win32 tweaks.
312 S: Yokohama, Japan
313
314 N: Edward O'Callaghan
315 E: eocallaghan@auroraux.org
316 W: http://www.auroraux.org
317 D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
318 D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
319 D: and error clean ups.
320
321 N: Morten Ofstad
322 E: morten@hue.no
323 D: Visual C++ compatibility fixes
324
325 N: Jakob Stoklund Olesen
326 E: stoklund@2pi.dk
327 D: Machine code verifier
328 D: Blackfin backend
329 D: Fast register allocator
330 D: Greedy register allocator
331
332 N: Richard Osborne
333 E: richard@xmos.com
334 D: XCore backend
335
336 N: Devang Patel
337 E: dpatel@apple.com
338 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
339 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
340 D: Optimizer improvements, Loop Index Split
341
342 N: Wesley Peck
343 E: peckw@wesleypeck.com
344 W: http://wesleypeck.com/
345 D: MicroBlaze backend
346
347 N: Francois Pichet
348 E: pichet2000@gmail.com
349 D: MSVC support
350
351 N: Vladimir Prus
352 W: http://vladimir_prus.blogspot.com
353 E: ghost@cs.msu.su
354 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
355
356 N: Kalle Raiskila
357 E: kalle.rasikila@nokia.com
358 D: Some bugfixes to CellSPU
359
360 N: Xerxes Ranby
361 E: xerxes@zafena.se
362 D: Cmake dependency chain and various bug fixes
363
364 N: Alex Rosenberg
365 E: alexr@leftfield.org
366 I: arosenberg
367 D: ARM calling conventions rewrite, hard float support
368
369 N: Chad Rosier
370 E: mcrosier@codeaurora.org
371 D: ARM fast-isel improvements
372 D: Performance monitoring
373
374 N: Nadav Rotem
375 E: nrotem@apple.com
376 D: X86 code generation improvements, Loop Vectorizer.
377
378 N: Roman Samoilov
379 E: roman@codedgers.com
380 D: MSIL backend
381
382 N: Duncan Sands
383 E: baldrick@free.fr
384 I: baldrick
385 D: Ada support in llvm-gcc
386 D: Dragonegg plugin
387 D: Exception handling improvements
388 D: Type legalizer rewrite
389
390 N: Ruchira Sasanka
391 E: sasanka@uiuc.edu
392 D: Graph coloring register allocator for the Sparc64 backend
393
394 N: Arnold Schwaighofer
395 E: arnold.schwaighofer@gmail.com
396 D: Tail call optimization for the x86 backend
397
398 N: Shantonu Sen
399 E: ssen@apple.com
400 D: Miscellaneous bug fixes
401
402 N: Anand Shukla
403 E: ashukla@cs.uiuc.edu
404 D: The `paths' pass
405
406 N: Michael J. Spencer
407 E: bigcheesegs@gmail.com
408 D: Shepherding Windows COFF support into MC.
409 D: Lots of Windows stuff.
410
411 N: Reid Spencer
412 E: rspencer@reidspencer.com
413 W: http://reidspencer.com/
414 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
415
416 N: Alp Toker
417 E: alp@nuanti.com
418 W: http://atoker.com/
419 D: C++ frontend next generation standards implementation
420
421 N: Craig Topper
422 E: craig.topper@gmail.com
423 D: X86 codegen and disassembler improvements. AVX2 support.
424
425 N: Edwin Torok
426 E: edwintorok@gmail.com
427 D: Miscellaneous bug fixes
428
429 N: Adam Treat
430 E: manyoso@yahoo.com
431 D: C++ bugs filed, and C++ front-end bug fixes.
432
433 N: Lauro Ramos Venancio
434 E: lauro.venancio@indt.org.br
435 D: ARM backend improvements
436 D: Thread Local Storage implementation
437
438 N: Bill Wendling
439 I: wendling
440 E: isanbard@gmail.com
441 D: Release manager, IR Linker, LTO
442 D: Bunches of stuff
443
444 N: Bob Wilson
445 E: bob.wilson@acm.org
446 D: Advanced SIMD (NEON) support in the ARM backend.