CREDITS.TXT revision 3acd9181df5d8f76f75a384266e2a78b9a6c4f45
186c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris LattnerInspired by the CREDITS file from the Linux source tree, this file is,
286c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris Lattnerlikewise, at least a partial list of people who have contributed to the LLVM
386c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris Lattnerproject. The format and the next paragraph are stolen directly from that file.
486c27eebc0a4aaeb3de1ee615e8c31c6ab60af14Chris Lattner
5b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha 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).
90fc20c82bcf82a3a802bedf480b8e89048df2371Misha 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
15b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Henrik Bach
1671a1872451e9348fa5b3e3295d584d56b0ddf1c4Owen AndersonD: MingW Win32 API portability layer
1771a1872451e9348fa5b3e3295d584d56b0ddf1c4Owen Anderson
1889fc9428f3ad2a3cb1716d68310b14644ab9e506Owen AndersonN: Nate Begeman
1989fc9428f3ad2a3cb1716d68310b14644ab9e506Owen AndersonE: natebegeman@mac.com
2071a1872451e9348fa5b3e3295d584d56b0ddf1c4Owen AndersonD: Portions of the PowerPC backend
21f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris Lattner
22f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerN: Tanya Brethour
23f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerE: tonic@nondot.org
24f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanW: http://nondot.org/~tonic/
25f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: The llvm-ar tool
26e5ce8479244a293aa46d94d1aa49d1769f35ba7bNate Begeman
27e5ce8479244a293aa46d94d1aa49d1769f35ba7bNate BegemanN: Misha Brukman
28f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanE: brukman+llvm@uiuc.edu
294e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerW: http://misha.brukman.net
304e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerD: Portions of X86 and Sparc JIT compilers, PowerPC backend
314e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerD: Incremental bytecode loader
322f5d5937eccfaa17c01ab5136bfde20f2f6d767cDaniel Berlin
334e6b17a41bc97da1e7addd6b184e6901a0f638a0Chris LattnerN: Cameron Buschardt
340b061363e310f96b21fe24f7abc5d230b7936236Neil BoothE: buschard@uiuc.edu
350b061363e310f96b21fe24f7abc5d230b7936236Neil BoothD: The `mem2reg' pass - promotes values stored in memory to registers
363e025dca7f14c1e844943ef1f37dd8321f5b90d8Neil Booth
370b061363e310f96b21fe24f7abc5d230b7936236Neil BoothN: Casey Carter
38b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanE: ccarter@uiuc.edu
392d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: Fixes to the Reassociation pass, various improvement patches
40b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
41f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Jeff Cohen
42f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Native Win32 API portability layer
43b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
44b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: John T. Criswell
452d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: criswell@uiuc.edu
460fc20c82bcf82a3a802bedf480b8e89048df2371Misha BrukmanD: Autoconf support, QMTest database, documentation improvements
47b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
48bb7a62435264f8f00ae502fcf985a3956d914cd4Chandler CarruthN: Alkis Evlogimenos
49bb7a62435264f8f00ae502fcf985a3956d914cd4Chandler CarruthE: alkis@evlogimenos.com
50bb7a62435264f8f00ae502fcf985a3956d914cd4Chandler CarruthD: Linear scan register allocator, many codegen improvements, Java frontend
51bb7a62435264f8f00ae502fcf985a3956d914cd4Chandler Carruth
52b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Brian Gaeke
532d7721457a7587285c46f1543185cef93164457cMisha BrukmanE: gaeke@uiuc.edu
54b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanW: http://www.students.uiuc.edu/~gaeke/
55b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Portions of X86 static and JIT compilers. 
564c286c373168269827e104749c75066b26588d58Chris LattnerD: Dynamic trace optimizer 
574c286c373168269827e104749c75066b26588d58Chris LattnerD: FreeBSD/X86 compatibility fixes, the llvm-nm tool
58b3ff6b75390803166301d850754670713193f8b8Evan Cheng
59fc32dcbdda713cd1f3e27aeaa5a0722df1896c66Evan ChengN: Louis Gerbarg
605d286d8d6f49d9911f5a40ac91f723cd20874e53Evan ChengD: Portions of the PowerPC backend
61fc32dcbdda713cd1f3e27aeaa5a0722df1896c66Evan Cheng
62fc32dcbdda713cd1f3e27aeaa5a0722df1896c66Evan ChengN: Paolo Invernizzi
634c286c373168269827e104749c75066b26588d58Chris LattnerE: arathorn@fastwebnet.it
64f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Visual C++ compatibility fixes 
650939d7745298ae84ef4e0adcbc872125c0faf544Jeff Cohen
660939d7745298ae84ef4e0adcbc872125c0faf544Jeff CohenN: Brad Jones
67f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerE: kungfoomaster@nondot.org
68f69dcb15c3b75a267c6e35d914a83d6c3445a192Chris LattnerD: Support for packed types
692d7721457a7587285c46f1543185cef93164457cMisha Brukman
702d7721457a7587285c46f1543185cef93164457cMisha BrukmanN: Sumant Kowshik
710a4a48948782b5593fbd1aaea6aadf85f3615463John CriswellE: kowshik@uiuc.edu
722d7721457a7587285c46f1543185cef93164457cMisha BrukmanD: Author of the original C backend
73a3fdc024669beedc938360c7fee3349fe7a4a48fRafael Espindola
74a3fdc024669beedc938360c7fee3349fe7a4a48fRafael EspindolaN: Chris Lattner
75a3fdc024669beedc938360c7fee3349fe7a4a48fRafael EspindolaE: sabre@nondot.org
76a3fdc024669beedc938360c7fee3349fe7a4a48fRafael EspindolaW: http://nondot.org/~sabre/
774ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerD: Primary architect of LLVM
78ab5948f2427a1b7f3f92e338fb70f682d81c0fb6Alkis Evlogimenos
794ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerN: Vladimir Merzliakov
804ce08a0a47d0708455195237ac30b626dcdf969aChris LattnerE: wanderer@rsu.ru
81b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanD: Test suite fixes for FreeBSD
82b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha Brukman
83b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Morten Ofstad
844e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerE: morten@hue.no
85d56bd42b917a81adc75af566d2bf6a3f42b9f0d3Brian GaekeD: Visual C++ compatibility fixes 
862d7721457a7587285c46f1543185cef93164457cMisha Brukman
87b296160ce9693149d6f8d8b8f2596a05d4a8330dMisha BrukmanN: Vladimir Prus
8845cdf30d0aedbc437cd1029695de8f66f3136facNicolas GeoffrayE: ghost@cs.msu.su
8945cdf30d0aedbc437cd1029695de8f66f3136facNicolas GeoffrayD: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
9045cdf30d0aedbc437cd1029695de8f66f3136facNicolas Geoffray
9145cdf30d0aedbc437cd1029695de8f66f3136facNicolas GeoffrayN: Ruchira Sasanka
9245cdf30d0aedbc437cd1029695de8f66f3136facNicolas GeoffrayE: sasanka@uiuc.edu
93f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanD: Graph coloring register allocator for the Sparc64 backend
94f200eee6ac761044d24de0c89ee3224d589fd72bMisha Brukman
95f200eee6ac761044d24de0c89ee3224d589fd72bMisha BrukmanN: Anand Shukla
964e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerE: ashukla@cs.uiuc.edu
974e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerD: The `paths' pass
984e514c1f0c5794d24eff32b9a7ecce935110113eChris Lattner
994e514c1f0c5794d24eff32b9a7ecce935110113eChris LattnerN: Reid Spencer
100f5e941b9f690e54597af6b33df582ea2c5b72e4aAnton KorobeynikovE: rspencer@x10sys.com
101f5e941b9f690e54597af6b33df582ea2c5b72e4aAnton KorobeynikovW: http://llvm.x10sys.com/rspencer
102f5e941b9f690e54597af6b33df582ea2c5b72e4aAnton KorobeynikovD: Stacker, llvmc, bytecode, other. See web page for current notes.
103f5e941b9f690e54597af6b33df582ea2c5b72e4aAnton Korobeynikov
104addccfd0060473f0ef3b731a08d4b384e8b9f8f9Dan GohmanN: Bill Wendling
105addccfd0060473f0ef3b731a08d4b384e8b9f8f9Dan GohmanE: wendling@isanbard.org
106addccfd0060473f0ef3b731a08d4b384e8b9f8f9Dan GohmanD: The `Lower Setjmp/Longjmp' pass, improvements to the -lowerswitch pass.
107addccfd0060473f0ef3b731a08d4b384e8b9f8f9Dan Gohman