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.
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, DataLayout refactoring, random improvements
22 D: MingW Win32 API portability layer
25 E: aaron@aaronballman.com
26 D: Clang frontend, frontend attributes, Windows support, general bug fixing
30 E: a.bataev@outlook.com
31 D: Clang frontend, OpenMP in clang, SLP vectorizer, Loop vectorizer, InstCombine
35 E: natebegeman@mac.com
36 D: PowerPC backend developer
37 D: Target-independent code generator and analysis improvements
40 E: dberlin@dberlin.org
41 D: ET-Forest implementation.
45 E: gberry@codeaurora.org
47 D: AArch64 backend improvements
48 D: Added EarlyCSE MemorySSA support
49 D: CodeGen improvements
53 D: General bug fixing/fit & finish, mostly in Clang
56 E: neil@daikokuya.co.uk
57 D: APFloat implementation.
64 E: brukman+llvm@uiuc.edu
65 W: http://misha.brukman.net
66 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
67 D: Incremental bitcode loader
71 D: The `mem2reg' pass - promotes values stored in memory to registers
74 E: bcahoon@codeaurora.org
75 D: Loop unrolling with run-time trip counts.
78 E: chandlerc@gmail.com
79 E: chandlerc@google.com
80 D: Hashing algorithms and interfaces
81 D: Inline cost analysis
82 D: Machine block placement pass
87 D: Fixes to the Reassociation pass, various improvement patches
90 E: evan.cheng@apple.com
91 D: ARM and X86 backends
92 D: Instruction scheduler improvements
93 D: Register allocator improvements
94 D: Loop optimizer improvements
95 D: Target-independent code generator improvements
97 N: Dan Villiom Podlaski Christiansen
101 D: LLVM Makefile improvements
102 D: Clang diagnostic & driver tweaks
106 E: jeffc@jolt-lang.org
107 W: http://jolt-lang.org
108 D: Native Win32 API portability layer
112 D: Original Autoconf support, documentation improvements, bug fixes
115 E: adasgupt@codeaurora.org
116 D: Deterministic finite automaton based infrastructure for VLIW packetization
119 E: stefanus.du.toit@intel.com
120 D: Bug fixes and minor improvements
122 N: Rafael Avila de Espindola
127 E: cestes@codeaurora.org
128 D: AArch64 machine description for Cortex-A53
131 E: alkis@evlogimenos.com
132 D: Linear scan register allocator, many codegen improvements, Java frontend
136 D: Basic-block autovectorization, PowerPC backend improvements
140 D: LIT patches and documentation
143 E: pizza@parseerror.com
144 D: Miscellaneous bug fixes
148 W: http://www.students.uiuc.edu/~gaeke/
149 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
150 D: Dynamic trace optimizer
151 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
154 E: nicolas.geoffray@lip6.fr
155 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
156 D: PPC backend fixes for Linux
160 D: Portions of the PowerPC backend
163 E: saemghani@gmail.com
164 D: Callgraph class cleanups
166 N: Mikhail Glushenkov
167 E: foldr@codedgers.com
171 E: llvm@sunfishcode.online
172 D: Miscellaneous bug fixes
173 D: WebAssembly Backend
176 E: rengolin@systemcall.eu
177 E: rengolin@gmail.com
178 D: ARM/AArch64 back-end improvements
179 D: Loop Vectorizer improvements
180 D: Regression and Test Suite improvements
181 D: Linux compatibility (GNU, musl, etc)
182 D: Initial Linux kernel / Android support effort
186 E: david@goodwinz.net
187 D: Thumb-2 code generator
190 E: greened@obbligato.org
191 D: Miscellaneous bug fixes
192 D: Register allocation refactoring
196 D: Improvements for space efficiency
199 E: grosbach@apple.com
201 D: SjLj exception handling support
202 D: General fixes and improvements for the ARM back-end
204 D: ARM integrated assembler and assembly parser
205 D: Led effort for the backend formerly known as ARM64
209 D: PBQP-based register allocator
212 E: gordonhenriksen@mac.com
213 D: Pluggable GC support
217 N: Raul Fernandes Herbster
218 E: raul@dsc.ufcg.edu.br
219 D: JIT support for ARM
222 E: arathorn@fastwebnet.it
223 D: Visual C++ compatibility fixes
226 E: patjenk@wam.umd.edu
229 N: Tony(Yanjun) Jiang
231 D: PowerPC Backend Developer
232 D: Improvements to the PPC backend and miscellaneous bug fixes
236 D: ARM constant islands improvements
237 D: Tail merging improvements
238 D: Rewrite X87 back end
239 D: Use APFloat for floating point constants widely throughout compiler
240 D: Implement X87 long double
243 E: kungfoomaster@nondot.org
244 D: Support for packed types
248 D: Author of LLVM Ada bindings
251 E: erich.keane@intel.com
252 D: A variety of Clang contributions including function multiversioning, regcall/vectorcall.
256 W: http://randomhacks.net/
257 D: llvm-config script
259 N: Anton Korobeynikov
260 E: anton at korobeynikov dot info
261 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
262 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
263 D: Switch lowering refactoring
267 D: Author of the original C backend
270 E: benny.kra@gmail.com
271 D: Miscellaneous bug fixes
273 N: Michael Kuperstein
278 E: sundeepk@codeaurora.org
279 D: Implemented DFA-based target independent VLIW packetizer
282 E: christopher.lamb@gmail.com
283 D: aligned load/store support, parts of noalias and restrict support
284 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
289 D: Improvements to the PPC backend, instruction scheduling
290 D: Debug and Dwarf implementation
291 D: Auto upgrade mangler
292 D: llvm-gcc4 svn wrangler
296 W: http://nondot.org/~sabre/
297 D: Primary architect of LLVM
299 N: Tanya Lattner (Tanya Brethour)
301 W: http://nondot.org/~tonic/
302 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
303 D: Modulo scheduling in the SparcV9 backend
304 D: Release manager (1.7+)
307 E: sylvestre@debian.org
308 W: http://sylvestre.ledru.info/
309 W: https://apt.llvm.org/
310 D: Debian and Ubuntu packaging
311 D: Continuous integration with jenkins
314 E: alenhar2@cs.uiuc.edu
315 W: http://www.lenharth.org/~andrewl/
317 D: Sampling based profiling
321 D: PredicateSimplifier pass
323 N: Tony Linthicum, et. al.
324 E: tlinth@codeaurora.org
325 D: Backend for Qualcomm's Hexagon VLIW processor.
327 N: Bruno Cardoso Lopes
328 E: bruno.cardoso@gmail.com
330 W: http://brunocardoso.cc
332 D: Random ARM integrated assembler and assembly parser improvements
333 D: General X86 AVX1 support
336 E: luweining@loongson.cn
340 E: duraid@octopus.com.au
341 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
342 D: IA64 backend, BigBlock register allocator
345 E: rjmccall@apple.com
346 D: Clang semantic analysis and IR generation
349 E: michael.mccracken@gmail.com
350 D: Line number support for llvmgcc
353 E: fanbo.meng@ibm.com
356 N: Vladimir Merzliakov
358 D: Test suite fixes for FreeBSD
362 D: Added STI Cell SPU backend.
366 D: Support for implicit TLS model used with MS VC runtime
367 D: Dumping of Win64 EH structures
371 E: geek4civic@gmail.com
372 E: chapuni@hf.rim.or.jp
373 D: Maintaining the Git monorepo
374 W: https://github.com/llvm-project/
377 N: Edward O'Callaghan
378 E: eocallaghan@auroraux.org
379 W: http://www.auroraux.org
380 D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
381 D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
382 D: and error clean ups.
386 D: Visual C++ compatibility fixes
388 N: Jakob Stoklund Olesen
390 D: Machine code verifier
392 D: Fast register allocator
393 D: Greedy register allocator
400 E: piotr.padlewski@gmail.com
401 D: !invariant.group metadata and other intrinsics for devirtualization in clang
405 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
406 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
407 D: Optimizer improvements, Loop Index Split
410 E: apazos@codeaurora.org
411 D: Fixes and improvements to the AArch64 backend
414 E: peckw@wesleypeck.com
415 W: http://wesleypeck.com/
416 D: MicroBlaze backend
419 E: pichet2000@gmail.com
423 E: llvm-dev@redking.me.uk
424 D: X86 backend, Selection DAG, Scheduler Models and Cost Tables.
431 W: http://vladimir_prus.blogspot.com
433 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
436 E: kalle.rasikila@nokia.com
437 D: Some bugfixes to CellSPU
441 D: Cmake dependency chain and various bug fixes
444 E: alexr@leftfield.org
446 D: ARM calling conventions rewrite, hard float support
449 E: mcrosier@codeaurora.org
451 D: AArch64 fast instruction selection pass
452 D: Fixes and improvements to the ARM fast-isel pass
453 D: Fixes and improvements to the AArch64 backend
456 E: nadav.rotem@me.com
457 D: X86 code generation improvements, Loop Vectorizer, SLP Vectorizer
460 E: roman@codedgers.com
466 D: Ada support in llvm-gcc
468 D: Exception handling improvements
469 D: Type legalizer rewrite
473 D: Graph coloring register allocator for the Sparc64 backend
476 E: alina.sbirlea@gmail.com
477 D: MemorySSA, BatchAA, misc loop and new pass manager work.
479 N: Arnold Schwaighofer
480 E: arnold.schwaighofer@gmail.com
481 D: Tail call optimization for the x86 backend
485 D: Miscellaneous bug fixes
488 E: ashukla@cs.uiuc.edu
491 N: Michael J. Spencer
492 E: bigcheesegs@gmail.com
493 D: Shepherding Windows COFF support into MC.
494 D: Lots of Windows stuff.
497 E: rspencer@reidspencer.com
498 W: http://reidspencer.com/
499 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
501 N: Abhina Sreeskantharajan
502 E: Abhina.Sreeskantharajan@ibm.com
507 W: http://atoker.com/
508 D: C++ frontend next generation standards implementation
511 E: craig.topper@gmail.com
512 D: X86 codegen and disassembler improvements. AVX2 support.
515 E: edwintorok@gmail.com
516 D: Miscellaneous bug fixes
520 D: C++ bugs filed, and C++ front-end bug fixes.
524 D: Instruction Scheduling, ...
526 N: Lauro Ramos Venancio
527 E: lauro.venancio@indt.org.br
528 D: ARM backend improvements
529 D: Thread Local Storage implementation
532 E: phoebe.wang@intel.com
533 D: X86 bug fixes and new instruction support.
537 E: isanbard@gmail.com
538 D: Release manager, IR Linker, LTO.
542 E: bob.wilson@acm.org
543 D: Advanced SIMD (NEON) support in the ARM backend.
547 E: zhangqingshan.zll@bytedance.com
550 E: hljhehlj@cn.ibm.com
551 D: PowerPC Backend Developer
555 E: zixuan.wu@linux.alibaba.com
558 E: shkzhang@cn.ibm.com
559 D: PowerPC Backend Developer
562 E: czhengsz@cn.ibm.com
563 D: PowerPC Backend Developer
566 E: djordje.todorovic@rt-rk.com
570 E: biplmish@in.ibm.com