[llvm-exegesis][NFC] Simplify code now that Instruction has more semantic
[llvm-complete.git] / CREDITS.TXT
blob7108051d67ab80cf0f9a31a4e1a004214c21c7a7
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!
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.
11 N: Vikram Adve
12 E: vadve@cs.uiuc.edu
13 W: http://www.cs.uiuc.edu/~vadve/
14 D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
16 N: Owen Anderson
17 E: resistor@mac.com
18 D: LCSSA pass and related LoopUnswitch work
19 D: GVNPRE pass, DataLayout refactoring, random improvements
21 N: Henrik Bach
22 D: MingW Win32 API portability layer
24 N: Aaron Ballman
25 E: aaron@aaronballman.com
26 D: Clang frontend, frontend attributes, Windows support, general bug fixing
27 I: AaronBallman
29 N: Nate Begeman
30 E: natebegeman@mac.com
31 D: PowerPC backend developer
32 D: Target-independent code generator and analysis improvements
34 N: Daniel Berlin
35 E: dberlin@dberlin.org
36 D: ET-Forest implementation.
37 D: Sparse bitmap
39 N: Geoff Berry
40 E: gberry@codeaurora.org
41 E: gcb@acm.org
42 D: AArch64 backend improvements
43 D: Added EarlyCSE MemorySSA support
44 D: CodeGen improvements
46 N: David Blaikie
47 E: dblaikie@gmail.com
48 D: General bug fixing/fit & finish, mostly in Clang
50 N: Neil Booth
51 E: neil@daikokuya.co.uk
52 D: APFloat implementation.
54 N: Alex Bradbury
55 E: asb@lowrisc.org
56 D: RISC-V backend
58 N: Misha Brukman
59 E: brukman+llvm@uiuc.edu
60 W: http://misha.brukman.net
61 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
62 D: Incremental bitcode loader
64 N: Cameron Buschardt
65 E: buschard@uiuc.edu
66 D: The `mem2reg' pass - promotes values stored in memory to registers
68 N: Brendon Cahoon
69 E: bcahoon@codeaurora.org
70 D: Loop unrolling with run-time trip counts.
72 N: Chandler Carruth
73 E: chandlerc@gmail.com
74 E: chandlerc@google.com
75 D: Hashing algorithms and interfaces
76 D: Inline cost analysis
77 D: Machine block placement pass
78 D: SROA
80 N: Casey Carter
81 E: ccarter@uiuc.edu
82 D: Fixes to the Reassociation pass, various improvement patches
84 N: Evan Cheng
85 E: evan.cheng@apple.com
86 D: ARM and X86 backends
87 D: Instruction scheduler improvements
88 D: Register allocator improvements
89 D: Loop optimizer improvements
90 D: Target-independent code generator improvements
92 N: Dan Villiom Podlaski Christiansen
93 E: danchr@gmail.com
94 E: danchr@cs.au.dk
95 W: http://villiom.dk
96 D: LLVM Makefile improvements
97 D: Clang diagnostic & driver tweaks
98 S: Aarhus, Denmark
100 N: Jeff Cohen
101 E: jeffc@jolt-lang.org
102 W: http://jolt-lang.org
103 D: Native Win32 API portability layer
105 N: John T. Criswell
106 E: criswell@uiuc.edu
107 D: Original Autoconf support, documentation improvements, bug fixes
109 N: Anshuman Dasgupta
110 E: adasgupt@codeaurora.org
111 D: Deterministic finite automaton based infrastructure for VLIW packetization
113 N: Stefanus Du Toit
114 E: stefanus.du.toit@intel.com
115 D: Bug fixes and minor improvements
117 N: Rafael Avila de Espindola
118 E: rafael@espindo.la
119 D: MC and LLD work
121 N: Dave Estes
122 E: cestes@codeaurora.org
123 D: AArch64 machine description for Cortex-A53
125 N: Alkis Evlogimenos
126 E: alkis@evlogimenos.com
127 D: Linear scan register allocator, many codegen improvements, Java frontend
129 N: Hal Finkel
130 E: hfinkel@anl.gov
131 D: Basic-block autovectorization, PowerPC backend improvements
133 N: Eric Fiselier
134 E: eric@efcs.ca
135 D: LIT patches and documentation.
137 N: Ryan Flynn
138 E: pizza@parseerror.com
139 D: Miscellaneous bug fixes
141 N: Brian Gaeke
142 E: gaeke@uiuc.edu
143 W: http://www.students.uiuc.edu/~gaeke/
144 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
145 D: Dynamic trace optimizer
146 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
148 N: Nicolas Geoffray
149 E: nicolas.geoffray@lip6.fr
150 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
151 D: PPC backend fixes for Linux
153 N: Louis Gerbarg
154 E: lgg@apple.com
155 D: Portions of the PowerPC backend
157 N: Saem Ghani
158 E: saemghani@gmail.com
159 D: Callgraph class cleanups
161 N: Mikhail Glushenkov
162 E: foldr@codedgers.com
163 D: Author of llvmc2
165 N: Dan Gohman
166 E: sunfish@mozilla.com
167 D: Miscellaneous bug fixes
168 D: WebAssembly Backend
170 N: David Goodwin
171 E: david@goodwinz.net
172 D: Thumb-2 code generator
174 N: David Greene
175 E: greened@obbligato.org
176 D: Miscellaneous bug fixes
177 D: Register allocation refactoring
179 N: Gabor Greif
180 E: ggreif@gmail.com
181 D: Improvements for space efficiency
183 N: James Grosbach
184 E: grosbach@apple.com
185 I: grosbach
186 D: SjLj exception handling support
187 D: General fixes and improvements for the ARM back-end
188 D: MCJIT
189 D: ARM integrated assembler and assembly parser
190 D: Led effort for the backend formerly known as ARM64
192 N: Lang Hames
193 E: lhames@gmail.com
194 D: PBQP-based register allocator
196 N: Gordon Henriksen
197 E: gordonhenriksen@mac.com
198 D: Pluggable GC support
199 D: C interface
200 D: Ocaml bindings
202 N: Raul Fernandes Herbster
203 E: raul@dsc.ufcg.edu.br
204 D: JIT support for ARM
206 N: Paolo Invernizzi
207 E: arathorn@fastwebnet.it
208 D: Visual C++ compatibility fixes
210 N: Patrick Jenkins
211 E: patjenk@wam.umd.edu
212 D: Nightly Tester
214 N: Tony(Yanjun) Jiang
215 E: jtony@ca.ibm.com
216 D: PowerPC Backend Developer
217 D: Improvements to the PPC backend and miscellaneous bug fixes
219 N: Dale Johannesen
220 E: dalej@apple.com
221 D: ARM constant islands improvements
222 D: Tail merging improvements
223 D: Rewrite X87 back end
224 D: Use APFloat for floating point constants widely throughout compiler
225 D: Implement X87 long double
227 N: Brad Jones
228 E: kungfoomaster@nondot.org
229 D: Support for packed types
231 N: Rod Kay
232 E: rkay@auroraux.org
233 D: Author of LLVM Ada bindings
235 N: Erich Keane
236 E: erich.keane@intel.com
237 D: A variety of Clang contributions including function multiversioning, regcall/vectorcall.
238 I: ErichKeane
240 N: Eric Kidd
241 W: http://randomhacks.net/
242 D: llvm-config script
244 N: Anton Korobeynikov
245 E: anton at korobeynikov dot info
246 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
247 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
248 D: Switch lowering refactoring
250 N: Sumant Kowshik
251 E: kowshik@uiuc.edu
252 D: Author of the original C backend
254 N: Benjamin Kramer
255 E: benny.kra@gmail.com
256 D: Miscellaneous bug fixes
258 N: Sundeep Kushwaha
259 E: sundeepk@codeaurora.org
260 D: Implemented DFA-based target independent VLIW packetizer
262 N: Christopher Lamb
263 E: christopher.lamb@gmail.com
264 D: aligned load/store support, parts of noalias and restrict support
265 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
266 D: address spaces
268 N: Jim Laskey
269 E: jlaskey@apple.com
270 D: Improvements to the PPC backend, instruction scheduling
271 D: Debug and Dwarf implementation
272 D: Auto upgrade mangler
273 D: llvm-gcc4 svn wrangler
275 N: Chris Lattner
276 E: sabre@nondot.org
277 W: http://nondot.org/~sabre/
278 D: Primary architect of LLVM
280 N: Tanya Lattner (Tanya Brethour)
281 E: tonic@nondot.org
282 W: http://nondot.org/~tonic/
283 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
284 D: Modulo scheduling in the SparcV9 backend
285 D: Release manager (1.7+)
287 N: Sylvestre Ledru
288 E: sylvestre@debian.org
289 W: http://sylvestre.ledru.info/
290 W: https://apt.llvm.org/
291 D: Debian and Ubuntu packaging
292 D: Continuous integration with jenkins
294 N: Andrew Lenharth
295 E: alenhar2@cs.uiuc.edu
296 W: http://www.lenharth.org/~andrewl/
297 D: Alpha backend
298 D: Sampling based profiling
300 N: Nick Lewycky
301 E: nicholas@mxc.ca
302 D: PredicateSimplifier pass
304 N: Tony Linthicum, et. al.
305 E: tlinth@codeaurora.org
306 D: Backend for Qualcomm's Hexagon VLIW processor.
308 N: Bruno Cardoso Lopes
309 E: bruno.cardoso@gmail.com
310 I: bruno
311 W: http://brunocardoso.cc
312 D: Mips backend
313 D: Random ARM integrated assembler and assembly parser improvements
314 D: General X86 AVX1 support
316 N: Duraid Madina
317 E: duraid@octopus.com.au
318 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
319 D: IA64 backend, BigBlock register allocator
321 N: John McCall
322 E: rjmccall@apple.com
323 D: Clang semantic analysis and IR generation
325 N: Michael McCracken
326 E: michael.mccracken@gmail.com
327 D: Line number support for llvmgcc
329 N: Vladimir Merzliakov
330 E: wanderer@rsu.ru
331 D: Test suite fixes for FreeBSD
333 N: Scott Michel
334 E: scottm@aero.org
335 D: Added STI Cell SPU backend.
337 N: Kai Nacke
338 E: kai@redstar.de
339 D: Support for implicit TLS model used with MS VC runtime
340 D: Dumping of Win64 EH structures
342 N: Takumi Nakamura
343 I: chapuni
344 E: geek4civic@gmail.com
345 E: chapuni@hf.rim.or.jp
346 D: Maintaining the Git monorepo
347 W: https://github.com/llvm-project/
348 S: Ebina, Japan
350 N: Edward O'Callaghan
351 E: eocallaghan@auroraux.org
352 W: http://www.auroraux.org
353 D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
354 D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
355 D: and error clean ups.
357 N: Morten Ofstad
358 E: morten@hue.no
359 D: Visual C++ compatibility fixes
361 N: Jakob Stoklund Olesen
362 E: stoklund@2pi.dk
363 D: Machine code verifier
364 D: Blackfin backend
365 D: Fast register allocator
366 D: Greedy register allocator
368 N: Richard Osborne
369 E: richard@xmos.com
370 D: XCore backend
372 N: Piotr Padlewski
373 E: piotr.padlewski@gmail.com
374 D: !invariant.group metadata and other intrinsics for devirtualization in clang
376 N: Devang Patel
377 E: dpatel@apple.com
378 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
379 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
380 D: Optimizer improvements, Loop Index Split
382 N: Ana Pazos
383 E: apazos@codeaurora.org
384 D: Fixes and improvements to the AArch64 backend
386 N: Wesley Peck
387 E: peckw@wesleypeck.com
388 W: http://wesleypeck.com/
389 D: MicroBlaze backend
391 N: Francois Pichet
392 E: pichet2000@gmail.com
393 D: MSVC support
395 N: Adrian Prantl
396 E: aprantl@apple.com
397 D: Debug Information
399 N: Vladimir Prus
400 W: http://vladimir_prus.blogspot.com
401 E: ghost@cs.msu.su
402 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
404 N: Kalle Raiskila
405 E: kalle.rasikila@nokia.com
406 D: Some bugfixes to CellSPU
408 N: Xerxes Ranby
409 E: xerxes@zafena.se
410 D: Cmake dependency chain and various bug fixes
412 N: Alex Rosenberg
413 E: alexr@leftfield.org
414 I: arosenberg
415 D: ARM calling conventions rewrite, hard float support
417 N: Chad Rosier
418 E: mcrosier@codeaurora.org
419 I: mcrosier
420 D: AArch64 fast instruction selection pass
421 D: Fixes and improvements to the ARM fast-isel pass
422 D: Fixes and improvements to the AArch64 backend
424 N: Nadav Rotem
425 E: nadav.rotem@me.com
426 D: X86 code generation improvements, Loop Vectorizer, SLP Vectorizer
428 N: Roman Samoilov
429 E: roman@codedgers.com
430 D: MSIL backend
432 N: Duncan Sands
433 E: baldrick@free.fr
434 I: baldrick
435 D: Ada support in llvm-gcc
436 D: Dragonegg plugin
437 D: Exception handling improvements
438 D: Type legalizer rewrite
440 N: Ruchira Sasanka
441 E: sasanka@uiuc.edu
442 D: Graph coloring register allocator for the Sparc64 backend
444 N: Arnold Schwaighofer
445 E: arnold.schwaighofer@gmail.com
446 D: Tail call optimization for the x86 backend
448 N: Shantonu Sen
449 E: ssen@apple.com
450 D: Miscellaneous bug fixes
452 N: Anand Shukla
453 E: ashukla@cs.uiuc.edu
454 D: The `paths' pass
456 N: Michael J. Spencer
457 E: bigcheesegs@gmail.com
458 D: Shepherding Windows COFF support into MC.
459 D: Lots of Windows stuff.
461 N: Reid Spencer
462 E: rspencer@reidspencer.com
463 W: http://reidspencer.com/
464 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
466 N: Alp Toker
467 E: alp@nuanti.com
468 W: http://atoker.com/
469 D: C++ frontend next generation standards implementation
471 N: Craig Topper
472 E: craig.topper@gmail.com
473 D: X86 codegen and disassembler improvements. AVX2 support.
475 N: Edwin Torok
476 E: edwintorok@gmail.com
477 D: Miscellaneous bug fixes
479 N: Adam Treat
480 E: manyoso@yahoo.com
481 D: C++ bugs filed, and C++ front-end bug fixes.
483 N: Andrew Trick
484 E: atrick@apple.com
485 D: Instruction Scheduling, ...
487 N: Lauro Ramos Venancio
488 E: lauro.venancio@indt.org.br
489 D: ARM backend improvements
490 D: Thread Local Storage implementation
492 N: Bill Wendling
493 I: wendling
494 E: isanbard@gmail.com
495 D: Release manager, IR Linker, LTO
496 D: Bunches of stuff
498 N: Bob Wilson
499 E: bob.wilson@acm.org
500 D: Advanced SIMD (NEON) support in the ARM backend.
502 N: QingShan Zhang
503 E: qshanz@cn.ibm.com
504 D: PowerPC Backend Developer