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
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.
14 W: http://www.cs.uiuc.edu/~vadve/
15 D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
19 D: LCSSA pass and related LoopUnswitch work
20 D: GVNPRE pass, DataLayout refactoring, random improvements
23 D: MingW Win32 API portability layer
26 E: aaron@aaronballman.com
27 D: __declspec attributes, Windows support, general bug fixing
30 E: natebegeman@mac.com
31 D: PowerPC backend developer
32 D: Target-independent code generator and analysis improvements
35 E: dberlin@dberlin.org
36 D: ET-Forest implementation.
41 D: General bug fixing/fit & finish, mostly in Clang
44 E: neil@daikokuya.co.uk
45 D: APFloat implementation.
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
55 D: The `mem2reg' pass - promotes values stored in memory to registers
58 E: bcahoon@codeaurora.org
59 D: Loop unrolling with run-time trip counts.
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
71 D: Fixes to the Reassociation pass, various improvement patches
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
81 N: Dan Villiom Podlaski Christiansen
85 D: LLVM Makefile improvements
86 D: Clang diagnostic & driver tweaks
90 E: jeffc@jolt-lang.org
91 W: http://jolt-lang.org
92 D: Native Win32 API portability layer
96 D: Original Autoconf support, documentation improvements, bug fixes
99 E: adasgupt@codeaurora.org
100 D: Deterministic finite automaton based infrastructure for VLIW packetization
103 E: stefanus.du.toit@intel.com
104 D: Bug fixes and minor improvements
106 N: Rafael Avila de Espindola
107 E: rafael.espindola@gmail.com
111 E: cestes@codeaurora.org
112 D: AArch64 machine description for Cortex-A53
115 E: alkis@evlogimenos.com
116 D: Linear scan register allocator, many codegen improvements, Java frontend
120 D: Basic-block autovectorization, PowerPC backend improvements
123 E: pizza@parseerror.com
124 D: Miscellaneous bug fixes
128 W: http://www.students.uiuc.edu/~gaeke/
129 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
130 D: Dynamic trace optimizer
131 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
134 E: nicolas.geoffray@lip6.fr
135 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
136 D: PPC backend fixes for Linux
140 D: Portions of the PowerPC backend
143 E: saemghani@gmail.com
144 D: Callgraph class cleanups
146 N: Mikhail Glushenkov
147 E: foldr@codedgers.com
151 E: dan433584@gmail.com
152 D: Miscellaneous bug fixes
155 E: david@goodwinz.net
156 D: Thumb-2 code generator
159 E: greened@obbligato.org
160 D: Miscellaneous bug fixes
161 D: Register allocation refactoring
165 D: Improvements for space efficiency
168 E: grosbach@apple.com
170 D: SjLj exception handling support
171 D: General fixes and improvements for the ARM back-end
173 D: ARM integrated assembler and assembly parser
174 D: Led effort for the backend formerly known as ARM64
178 D: PBQP-based register allocator
181 E: gordonhenriksen@mac.com
182 D: Pluggable GC support
186 N: Raul Fernandes Herbster
187 E: raul@dsc.ufcg.edu.br
188 D: JIT support for ARM
191 E: arathorn@fastwebnet.it
192 D: Visual C++ compatibility fixes
195 E: patjenk@wam.umd.edu
200 D: ARM constant islands improvements
201 D: Tail merging improvements
202 D: Rewrite X87 back end
203 D: Use APFloat for floating point constants widely throughout compiler
204 D: Implement X87 long double
207 E: kungfoomaster@nondot.org
208 D: Support for packed types
212 D: Author of LLVM Ada bindings
215 W: http://randomhacks.net/
216 D: llvm-config script
218 N: Anton Korobeynikov
220 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
221 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
222 D: Switch lowering refactoring
226 D: Author of the original C backend
229 E: benny.kra@gmail.com
230 D: Miscellaneous bug fixes
233 E: sundeepk@codeaurora.org
234 D: Implemented DFA-based target independent VLIW packetizer
237 E: christopher.lamb@gmail.com
238 D: aligned load/store support, parts of noalias and restrict support
239 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
244 D: Improvements to the PPC backend, instruction scheduling
245 D: Debug and Dwarf implementation
246 D: Auto upgrade mangler
247 D: llvm-gcc4 svn wrangler
251 W: http://nondot.org/~sabre/
252 D: Primary architect of LLVM
254 N: Tanya Lattner (Tanya Brethour)
256 W: http://nondot.org/~tonic/
257 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
258 D: Modulo scheduling in the SparcV9 backend
259 D: Release manager (1.7+)
262 E: sylvestre@debian.org
263 W: http://sylvestre.ledru.info/
264 W: http://llvm.org/apt/
265 D: Debian and Ubuntu packaging
266 D: Continuous integration with jenkins
269 E: alenhar2@cs.uiuc.edu
270 W: http://www.lenharth.org/~andrewl/
272 D: Sampling based profiling
276 D: PredicateSimplifier pass
278 N: Tony Linthicum, et. al.
279 E: tlinth@codeaurora.org
280 D: Backend for Qualcomm's Hexagon VLIW processor.
282 N: Bruno Cardoso Lopes
283 E: bruno.cardoso@gmail.com
284 W: http://www.brunocardoso.org
288 E: duraid@octopus.com.au
289 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
290 D: IA64 backend, BigBlock register allocator
293 E: rjmccall@apple.com
294 D: Clang semantic analysis and IR generation
297 E: michael.mccracken@gmail.com
298 D: Line number support for llvmgcc
300 N: Vladimir Merzliakov
302 D: Test suite fixes for FreeBSD
306 D: Added STI Cell SPU backend.
310 D: Support for implicit TLS model used with MS VC runtime
311 D: Dumping of Win64 EH structures
314 E: geek4civic@gmail.com
315 E: chapuni@hf.rim.or.jp
316 D: Cygwin and MinGW support.
320 N: Edward O'Callaghan
321 E: eocallaghan@auroraux.org
322 W: http://www.auroraux.org
323 D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
324 D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
325 D: and error clean ups.
329 D: Visual C++ compatibility fixes
331 N: Jakob Stoklund Olesen
333 D: Machine code verifier
335 D: Fast register allocator
336 D: Greedy register allocator
344 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
345 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
346 D: Optimizer improvements, Loop Index Split
349 E: apazos@codeaurora.org
350 D: Fixes and improvements to the AArch64 backend
353 E: peckw@wesleypeck.com
354 W: http://wesleypeck.com/
355 D: MicroBlaze backend
358 E: pichet2000@gmail.com
362 W: http://vladimir_prus.blogspot.com
364 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
367 E: kalle.rasikila@nokia.com
368 D: Some bugfixes to CellSPU
372 D: Cmake dependency chain and various bug fixes
375 E: alexr@leftfield.org
377 D: ARM calling conventions rewrite, hard float support
380 E: mcrosier@codeaurora.org
382 D: AArch64 fast instruction selection pass
383 D: Fixes and improvements to the ARM fast-isel pass
384 D: Fixes and improvements to the AArch64 backend
388 D: X86 code generation improvements, Loop Vectorizer.
391 E: roman@codedgers.com
397 D: Ada support in llvm-gcc
399 D: Exception handling improvements
400 D: Type legalizer rewrite
404 D: Graph coloring register allocator for the Sparc64 backend
406 N: Arnold Schwaighofer
407 E: arnold.schwaighofer@gmail.com
408 D: Tail call optimization for the x86 backend
412 D: Miscellaneous bug fixes
415 E: ashukla@cs.uiuc.edu
418 N: Michael J. Spencer
419 E: bigcheesegs@gmail.com
420 D: Shepherding Windows COFF support into MC.
421 D: Lots of Windows stuff.
424 E: rspencer@reidspencer.com
425 W: http://reidspencer.com/
426 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
430 W: http://atoker.com/
431 D: C++ frontend next generation standards implementation
434 E: craig.topper@gmail.com
435 D: X86 codegen and disassembler improvements. AVX2 support.
438 E: edwintorok@gmail.com
439 D: Miscellaneous bug fixes
443 D: C++ bugs filed, and C++ front-end bug fixes.
445 N: Lauro Ramos Venancio
446 E: lauro.venancio@indt.org.br
447 D: ARM backend improvements
448 D: Thread Local Storage implementation
452 E: isanbard@gmail.com
453 D: Release manager, IR Linker, LTO
457 E: bob.wilson@acm.org
458 D: Advanced SIMD (NEON) support in the ARM backend.