CREDITS.TXT revision 735e0acba5695d26826bb4aa0beda497a60e7810
1b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanInspired by the CREDITS file from the Linux source tree, this file is,
2b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukmanlikewise, at least a partial list of people who have contributed to the LLVM
3b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukmanproject. The format and the next paragraph are stolen directly from that file.
4b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
50fc20c82bcf82a3a802bedf480b8e89048df2371Misha BrukmanThe list is sorted by name and formatted to allow easy grepping and
60fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukmanbeautification by scripts.  The fields are: name (N), email (E), web-address
70fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukman(W), PGP key ID and fingerprint (P), description (D), and snail-mail address
80fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukman(S).
9b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
10b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Vikram Adve
11b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: vadve@cs.uiuc.edu
12b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://www.cs.uiuc.edu/~vadve/
13b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
14b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
15f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Henrik Bach
16f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: MingW Win32 API portability layer
17f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
18f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Nate Begeman
19f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanE: natebegeman@mac.com
20f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Portions of the PowerPC backend
21f200eee6ac761044d24de0c89ee3224d589fd72bMisha Brukman
222d7721457a7587285c46f1543185cef93164457cMisha BrukmanN: Tanya Brethour
232d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: tonic@nondot.org
242d7721457a7587285c46f1543185cef93164457cMisha BrukmanW: http://nondot.org/~tonic/
252d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: The llvm-ar tool
262d7721457a7587285c46f1543185cef93164457cMisha Brukman
27b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Misha Brukman
282d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: brukman+llvm@uiuc.edu
29b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://misha.brukman.net
30f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Portions of X86 and Sparc JIT compilers, PowerPC backend
31f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Incremental bytecode loader
32b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
33b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Cameron Buschardt
342d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: buschard@uiuc.edu
350fc20c82bcf82a3a802bedf480b8e89048df2371Misha BrukmanD: The `mem2reg' pass - promotes values stored in memory to registers
36b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
37b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Casey Carter
382d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: ccarter@uiuc.edu
39b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Fixes to the Reassociation pass, various improvement patches
40b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
41f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Jeff Cohen
42f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Native Win32 API portability layer
43f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
442d7721457a7587285c46f1543185cef93164457cMisha BrukmanN: John T. Criswell
452d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: criswell@uiuc.edu
462d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: Autoconf support, QMTest database, documentation improvements
472d7721457a7587285c46f1543185cef93164457cMisha Brukman
484ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerN: Alkis Evlogimenos
49ab5948f2427a1b7f3f92e338fb70f682d81c0fb6Alkis EvlogimenosE: alkis@evlogimenos.com
504ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerD: Linear scan register allocator, many codegen improvements, Java frontend
514ce08a0a47d0708455195237ac30b626dcdf969aChris Lattner
52b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Brian Gaeke
53b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: gaeke@uiuc.edu
54b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://www.students.uiuc.edu/~gaeke/
55e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanD: Portions of X86 static and JIT compilers; SparcV8 backend
56d56bd42b917a81adc75af566d2bf6a3f42b9f0d3Brian GaekeD: Dynamic trace optimizer 
572d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: FreeBSD/X86 compatibility fixes, the llvm-nm tool
58b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
59f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Louis Gerbarg
60f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Portions of the PowerPC backend
61f200eee6ac761044d24de0c89ee3224d589fd72bMisha Brukman
62f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Paolo Invernizzi
63309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanE: arathorn@fastwebnet.it
64f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Visual C++ compatibility fixes 
65f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
66323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanN: Brad Jones
67323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanE: kungfoomaster@nondot.org
68323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanD: Support for packed types
69323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha Brukman
703acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerN: Sumant Kowshik
713acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerE: kowshik@uiuc.edu
723acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerD: Author of the original C backend
733acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris Lattner
74b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Chris Lattner
75b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: sabre@nondot.org
76b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://nondot.org/~sabre/
77b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Primary architect of LLVM
78b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
79e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanN: Andrew Lenharth
80e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanE: alenhar2@cs.uiuc.edu
81e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanW: http://www.lenharth.org/~andrewl/
82e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanD: Alpha backend
83e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha Brukman
84735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaN: Duraid Madina
85735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaE: duraid@octopus.com.au
86735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaW: http://kinoko.c.u-tokyo.ac.jp/~duraid/
87735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaD: IA64 backend
88735e0acba5695d26826bb4aa0beda497a60e7810Duraid Madina
899626470f109752ddd3b12469aae30df8d121a056Chris LattnerN: Michael McCracken
909626470f109752ddd3b12469aae30df8d121a056Chris LattnerE: michael.mccracken@gmail.com
919626470f109752ddd3b12469aae30df8d121a056Chris LattnerD: Line number support for llvmgcc
929626470f109752ddd3b12469aae30df8d121a056Chris Lattner
93b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris LattnerN: Vladimir Merzliakov
94b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris LattnerE: wanderer@rsu.ru
95323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanD: Test suite fixes for FreeBSD
96b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris Lattner
97309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanN: Morten Ofstad
98309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanE: morten@hue.no
99309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanD: Visual C++ compatibility fixes 
100309ca69064f027702499605fc98f76ea8d34fd37Misha Brukman
101b7206e74fc9cae6533593853a9763a4b6257f5a2Misha BrukmanN: Vladimir Prus
102b7206e74fc9cae6533593853a9763a4b6257f5a2Misha BrukmanE: ghost@cs.msu.su
1039cd94d72b0cc5014c09775f2050cdd868baaa3e3Misha BrukmanD: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
104b7206e74fc9cae6533593853a9763a4b6257f5a2Misha Brukman
105b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Ruchira Sasanka
106b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: sasanka@uiuc.edu
107b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Graph coloring register allocator for the Sparc64 backend
108b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
109b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Anand Shukla
110b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: ashukla@cs.uiuc.edu
1112d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: The `paths' pass
112b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
11375920ee4608c556711df852cda647b5a13075f03Brian GaekeN: Reid Spencer
11475920ee4608c556711df852cda647b5a13075f03Brian GaekeE: rspencer@x10sys.com
115ad4ce52618ca03923d11e3f9f4aa19090687210dReid SpencerW: http://llvm.x10sys.com/rspencer
1167b8848f6e90e390045777d7c210841b33e844162Reid SpencerD: Stacker, llvmc, bytecode, other. See web page for current notes.
11775920ee4608c556711df852cda647b5a13075f03Brian Gaeke
1183363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerN: Adam Treat
1193363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerE: manyoso@yahoo.com
1203363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerD: C++ bugs filed, and C++ front-end bug fixes.
1213363e2786c55097e145abf7235c1ae944ebe0bb6Chris Lattner
122b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Bill Wendling
12376602528ec7de476452c5b0f7a3314bd3d0577b8Chris LattnerE: wendling@isanbard.org
1242d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: The `Lower Setjmp/Longjmp' pass, improvements to the -lowerswitch pass.
125