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 name 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
13 W: http://www.cs.uiuc.edu/~vadve/
14 D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
18 D: LCSSA pass and related LoopUnswitch work
19 D: GVNPRE pass, TargetData refactoring, random improvements
22 D: MingW Win32 API portability layer
25 E: natebegeman@mac.com
26 D: PowerPC backend developer
27 D: Target-independent code generator and analysis improvements
30 E: dberlin@dberlin.org
31 D: ET-Forest implementation.
35 E: neil@daikokuya.co.uk
36 D: APFloat implementation.
39 E: brukman+llvm@uiuc.edu
40 W: http://misha.brukman.net
41 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
42 D: Incremental bytecode loader
46 D: The `mem2reg' pass - promotes values stored in memory to registers
49 E: chandlerc@gmail.com
50 D: LinkTimeOptimizer for Linux, via binutils integration, and C API
54 D: Fixes to the Reassociation pass, various improvement patches
57 E: evan.cheng@apple.com
58 D: ARM and X86 backends
59 D: Instruction scheduler improvements
60 D: Register allocator improvements
61 D: Loop optimizer improvements
62 D: Target-independent code generator improvements
64 N: Dan Villiom Podlaski Christiansen
68 D: LLVM Makefile improvements
69 D: Clang diagnostic & driver tweaks
73 E: jeffc@jolt-lang.org
74 W: http://jolt-lang.org
75 D: Native Win32 API portability layer
79 D: Original Autoconf support, documentation improvements, bug fixes
82 E: stefanus.dutoit@rapidmind.com
83 D: Bug fixes and minor improvements
85 N: Rafael Avila de Espindola
86 E: rafael.espindola@gmail.com
90 E: alkis@evlogimenos.com
91 D: Linear scan register allocator, many codegen improvements, Java frontend
95 W: http://www.students.uiuc.edu/~gaeke/
96 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
97 D: Dynamic trace optimizer
98 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
101 E: nicolas.geoffray@lip6.fr
102 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
103 D: PPC backend fixes for Linux
106 D: Portions of the PowerPC backend
109 E: saemghani@gmail.com
110 D: Callgraph class cleanups
112 N: Mikhail Glushenkov
113 E: foldr@codedgers.com
118 D: Miscellaneous bug fixes
121 E: greened@obbligato.org
122 D: Miscellaneous bug fixes
123 D: Register allocation refactoring
127 D: Improvements for space efficiency
131 D: PBQP-based register allocator
134 E: gordonhenriksen@mac.com
135 D: Pluggable GC support
139 N: Raul Fernandes Herbster
140 E: raul@dsc.ufcg.edu.br
141 D: JIT support for ARM
144 E: arathorn@fastwebnet.it
145 D: Visual C++ compatibility fixes
148 E: patjenk@wam.umd.edu
152 E: kungfoomaster@nondot.org
153 D: Support for packed types
157 D: ARM constant islands improvements
158 D: Tail merging improvements
159 D: Rewrite X87 back end
160 D: Use APFloat for floating point constants widely throughout compiler
161 D: Implement X87 long double
164 W: http://randomhacks.net/
165 D: llvm-config script
167 N: Anton Korobeynikov
169 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
170 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
171 D: Switch lowering refactoring
175 D: Author of the original C backend
178 E: christopher.lamb@gmail.com
179 D: aligned load/store support, parts of noalias and restrict support
180 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
185 D: Improvements to the PPC backend, instruction scheduling
186 D: Debug and Dwarf implementation
187 D: Auto upgrade mangler
188 D: llvm-gcc4 svn wrangler
192 W: http://nondot.org/~sabre/
193 D: Primary architect of LLVM
195 N: Tanya Lattner (Tanya Brethour)
197 W: http://nondot.org/~tonic/
198 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
199 D: Modulo scheduling in the SparcV9 backend
200 D: Release manager (1.7+)
203 E: alenhar2@cs.uiuc.edu
204 W: http://www.lenharth.org/~andrewl/
206 D: Sampling based profiling
210 D: PredicateSimplifier pass
212 N: Bruno Cardoso Lopes
213 E: bruno.cardoso@gmail.com
214 W: http://www.brunocardoso.org
218 E: duraid@octopus.com.au
219 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
220 D: IA64 backend, BigBlock register allocator
223 E: michael.mccracken@gmail.com
224 D: Line number support for llvmgcc
226 N: Vladimir Merzliakov
228 D: Test suite fixes for FreeBSD
232 D: Added STI Cell SPU backend.
236 D: Visual C++ compatibility fixes
244 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
245 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
246 D: Optimizer improvements, Loop Index Split
249 W: http://vladimir_prus.blogspot.com
251 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
254 E: roman@codedgers.com
259 D: Ada front-end, exception handling improvements
263 D: Graph coloring register allocator for the Sparc64 backend
265 N: Arnold Schwaighofer
266 E: arnold.schwaighofer@gmail.com
267 D: Tail call optimization for the x86 backend
270 E: ashukla@cs.uiuc.edu
274 E: rspencer@reidspencer.com
275 W: http://reidspencer.com/
276 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
280 D: C++ bugs filed, and C++ front-end bug fixes.
282 N: Lauro Ramos Venancio
283 E: lauro.venancio@indt.org.br
284 D: ARM backend improvements
285 D: Thread Local Storage implementation
288 E: isanbard@gmail.com
290 D: Darwin exception handling
291 D: MMX & SSSE3 instructions