CREDITS.TXT revision 4e6b17a41bc97da1e7addd6b184e6901a0f638a0
186c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris LattnerThis file is a partial list of people who have contributed to the LLVM
286c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris Lattnerproject.  If you have contributed a patch or made some other contribution to
386c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris LattnerLLVM, please submit a patch to this file to add yourself, and it will be 
486c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris Lattnerdone!
5b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
60fc20c82bcf82a3a802bedf480b8e89048df2371Misha BrukmanThe list is sorted by name and formatted to allow easy grepping and
70fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukmanbeautification by scripts.  The fields are: name (N), email (E), web-address
80fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukman(W), PGP key ID and fingerprint (P), description (D), and snail-mail address
90fc20c82bcf82a3a802bedf480b8e89048df2371Misha Brukman(S).
10b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
11b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Vikram Adve
12b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: vadve@cs.uiuc.edu
13b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://www.cs.uiuc.edu/~vadve/
14b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
15b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
16f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Henrik Bach
17f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: MingW Win32 API portability layer
18f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
19f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Nate Begeman
20f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanE: natebegeman@mac.com
2150ceadfa340feb29afc0ad622bb3f220967c19c8Chris LattnerD: Primary PowerPC backend developer
22f200eee6ac761044d24de0c89ee3224d589fd72bMisha Brukman
234e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerN: Daniel Berlin
244e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerE: dberlin@dberlin.org
254e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerD: ET-Forest implementation.
264e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris Lattner
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
414c286c373168269827e104749c75066b26588d58Chris LattnerN: Evan Cheng
424c286c373168269827e104749c75066b26588d58Chris LattnerE: evan.cheng@apple.com
434c286c373168269827e104749c75066b26588d58Chris LattnerD: X86 backend improvements
444c286c373168269827e104749c75066b26588d58Chris Lattner
45f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Jeff Cohen
460939d7745298ae84ef4e0adcbc872125c0faf544Jeff CohenE: jeffc@jolt-lang.org
470939d7745298ae84ef4e0adcbc872125c0faf544Jeff CohenW: http://jolt-lang.org
48f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Native Win32 API portability layer
49f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
502d7721457a7587285c46f1543185cef93164457cMisha BrukmanN: John T. Criswell
512d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: criswell@uiuc.edu
522d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: Autoconf support, QMTest database, documentation improvements
532d7721457a7587285c46f1543185cef93164457cMisha Brukman
544ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerN: Alkis Evlogimenos
55ab5948f2427a1b7f3f92e338fb70f682d81c0fb6Alkis EvlogimenosE: alkis@evlogimenos.com
564ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerD: Linear scan register allocator, many codegen improvements, Java frontend
574ce08a0a47d0708455195237ac30b626dcdf969aChris Lattner
58b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Brian Gaeke
59b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: gaeke@uiuc.edu
60b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://www.students.uiuc.edu/~gaeke/
614e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerD: Portions of X86 static and JIT compilers; initial SparcV8 backend
62d56bd42b917a81adc75af566d2bf6a3f42b9f0d3Brian GaekeD: Dynamic trace optimizer 
632d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: FreeBSD/X86 compatibility fixes, the llvm-nm tool
64b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
65f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Louis Gerbarg
66f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Portions of the PowerPC backend
67f200eee6ac761044d24de0c89ee3224d589fd72bMisha Brukman
684e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerN: Saem Ghani
694e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerE: saemghani@gmail.com
704e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerD: Callgraph class cleanups
714e514c1f0c5794d24eff32b9a7ecce935110113eChris Lattner
72f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Paolo Invernizzi
73309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanE: arathorn@fastwebnet.it
74f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Visual C++ compatibility fixes 
75f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
76323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanN: Brad Jones
77323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanE: kungfoomaster@nondot.org
78323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanD: Support for packed types
79323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha Brukman
803acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerN: Sumant Kowshik
813acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerE: kowshik@uiuc.edu
823acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris LattnerD: Author of the original C backend
833acd9181df5d8f76f75a384266e2a78b9a6c4f45Chris Lattner
844c286c373168269827e104749c75066b26588d58Chris LattnerN: Jim Laskey
854c286c373168269827e104749c75066b26588d58Chris LattnerE: jlaskey@apple.com
864c286c373168269827e104749c75066b26588d58Chris LattnerD: Improvements to the PPC backend, instruction scheduling
874c286c373168269827e104749c75066b26588d58Chris Lattner
88b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Chris Lattner
89b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: sabre@nondot.org
90b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://nondot.org/~sabre/
91b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Primary architect of LLVM
92b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
93f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya LattnerN: Tanya Lattner (formerly Tanya Brethour)
94f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya LattnerE: tonic@nondot.org
95f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya LattnerW: http://nondot.org/~tonic/
96f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya LattnerD: The initial llvm-ar tool, converted regression testsuite to dejagnu
97f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya LattnerD: Modulo scheduling in the SparcV9 backend
98f2dce8d29b58a86fe5a9221e47247bcbe0d97118Tanya Lattner
99e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanN: Andrew Lenharth
100e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanE: alenhar2@cs.uiuc.edu
101e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanW: http://www.lenharth.org/~andrewl/
102e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha BrukmanD: Alpha backend
103e9b0a02579b9a5153fe8fe5c029870e2e93e48a1Misha Brukman
104735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaN: Duraid Madina
105735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaE: duraid@octopus.com.au
106735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaW: http://kinoko.c.u-tokyo.ac.jp/~duraid/
107735e0acba5695d26826bb4aa0beda497a60e7810Duraid MadinaD: IA64 backend
108735e0acba5695d26826bb4aa0beda497a60e7810Duraid Madina
1099626470f109752ddd3b12469aae30df8d121a056Chris LattnerN: Michael McCracken
1109626470f109752ddd3b12469aae30df8d121a056Chris LattnerE: michael.mccracken@gmail.com
1119626470f109752ddd3b12469aae30df8d121a056Chris LattnerD: Line number support for llvmgcc
1129626470f109752ddd3b12469aae30df8d121a056Chris Lattner
113b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris LattnerN: Vladimir Merzliakov
114b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris LattnerE: wanderer@rsu.ru
115323ed35e4fda5247799a8ec384a2d1f39b4c461dMisha BrukmanD: Test suite fixes for FreeBSD
116b8356b3ce2d1913d466ac4dc1812d7e2520527ddChris Lattner
117309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanN: Morten Ofstad
118309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanE: morten@hue.no
119309ca69064f027702499605fc98f76ea8d34fd37Misha BrukmanD: Visual C++ compatibility fixes 
120309ca69064f027702499605fc98f76ea8d34fd37Misha Brukman
121b7206e74fc9cae6533593853a9763a4b6257f5a2Misha BrukmanN: Vladimir Prus
122b7206e74fc9cae6533593853a9763a4b6257f5a2Misha BrukmanE: ghost@cs.msu.su
1239cd94d72b0cc5014c09775f2050cdd868baaa3e3Misha BrukmanD: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
124b7206e74fc9cae6533593853a9763a4b6257f5a2Misha Brukman
125b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Ruchira Sasanka
126b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: sasanka@uiuc.edu
127b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Graph coloring register allocator for the Sparc64 backend
128b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
129b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Anand Shukla
130b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: ashukla@cs.uiuc.edu
1312d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: The `paths' pass
132b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
13375920ee4608c556711df852cda647b5a13075f03Brian GaekeN: Reid Spencer
13475920ee4608c556711df852cda647b5a13075f03Brian GaekeE: rspencer@x10sys.com
135ad4ce52618ca03923d11e3f9f4aa19090687210dReid SpencerW: http://llvm.x10sys.com/rspencer
1367b8848f6e90e390045777d7c210841b33e844162Reid SpencerD: Stacker, llvmc, bytecode, other. See web page for current notes.
13775920ee4608c556711df852cda647b5a13075f03Brian Gaeke
1383363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerN: Adam Treat
1393363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerE: manyoso@yahoo.com
1403363e2786c55097e145abf7235c1ae944ebe0bb6Chris LattnerD: C++ bugs filed, and C++ front-end bug fixes.
1413363e2786c55097e145abf7235c1ae944ebe0bb6Chris Lattner
142b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Bill Wendling
14376602528ec7de476452c5b0f7a3314bd3d0577b8Chris LattnerE: wendling@isanbard.org
1442d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: The `Lower Setjmp/Longjmp' pass, improvements to the -lowerswitch pass.
145