CREDITS.TXT revision 8f2105bcb952eeb712f0cac237233bc092d2119f
1This file is a partial list of people who have contributed to the LLVM
2project.  If you have contributed a patch or made some other contribution to
3LLVM, please submit a patch to this file to add yourself, and it will be 
4done!
5
6The list is sorted by name and formatted to allow easy grepping and
7beautification by scripts.  The fields are: name (N), email (E), web-address
8(W), PGP key ID and fingerprint (P), description (D), and snail-mail address
9(S).
10
11N: Vikram Adve
12E: vadve@cs.uiuc.edu
13W: http://www.cs.uiuc.edu/~vadve/
14D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
15
16N: Owen Anderson
17E: resistor@mac.com
18D: LCSSA pass and related LoopUnswitch work, TargetData refactoring, random improvements
19
20N: Henrik Bach
21D: MingW Win32 API portability layer
22
23N: Nate Begeman
24E: natebegeman@mac.com
25D: PowerPC backend developer
26D: Target-independent code generator and analysis improvements
27
28N: Daniel Berlin
29E: dberlin@dberlin.org
30D: ET-Forest implementation.
31
32N: Misha Brukman
33E: brukman+llvm@uiuc.edu
34W: http://misha.brukman.net
35D: Portions of X86 and Sparc JIT compilers, PowerPC backend
36D: Incremental bytecode loader
37
38N: Cameron Buschardt
39E: buschard@uiuc.edu
40D: The `mem2reg' pass - promotes values stored in memory to registers
41
42N: Casey Carter
43E: ccarter@uiuc.edu
44D: Fixes to the Reassociation pass, various improvement patches
45
46N: Evan Cheng
47E: evan.cheng@apple.com
48D: X86 backend developer
49D: Instruction scheduler improvements
50D: Loop optimizer improvements
51D: Target-independent code generator improvements
52
53N: Jeff Cohen
54E: jeffc@jolt-lang.org
55W: http://jolt-lang.org
56D: Native Win32 API portability layer
57
58N: John T. Criswell
59E: criswell@uiuc.edu
60D: Autoconf support, QMTest database, documentation improvements
61
62N: Rafael Avila de Espindola
63E: rafael.espindola@gmail.com
64D: The ARM backend
65
66N: Alkis Evlogimenos
67E: alkis@evlogimenos.com
68D: Linear scan register allocator, many codegen improvements, Java frontend
69
70N: Brian Gaeke
71E: gaeke@uiuc.edu
72W: http://www.students.uiuc.edu/~gaeke/
73D: Portions of X86 static and JIT compilers; initial SparcV8 backend
74D: Dynamic trace optimizer 
75D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
76
77N: Louis Gerbarg
78D: Portions of the PowerPC backend
79
80N: Saem Ghani
81E: saemghani@gmail.com
82D: Callgraph class cleanups
83
84N: Paolo Invernizzi
85E: arathorn@fastwebnet.it
86D: Visual C++ compatibility fixes 
87
88N: Brad Jones
89E: kungfoomaster@nondot.org
90D: Support for packed types
91
92N: Eric Kidd
93W: http://randomhacks.net/
94D: llvm-config script
95
96N: Anton Korobeynikov
97E: asl@math.spbu.ru
98D: Mingw32 fixes, cross-compiling support, minor changes here and there
99
100N: Sumant Kowshik
101E: kowshik@uiuc.edu
102D: Author of the original C backend
103
104N: Jim Laskey
105E: jlaskey@apple.com
106D: Improvements to the PPC backend, instruction scheduling
107D: Debug implementation, Dwarf implementation
108
109N: Chris Lattner
110E: sabre@nondot.org
111W: http://nondot.org/~sabre/
112D: Primary architect of LLVM
113
114N: Tanya Lattner (formerly Tanya Brethour)
115E: tonic@nondot.org
116W: http://nondot.org/~tonic/
117D: The initial llvm-ar tool, converted regression testsuite to dejagnu
118D: Modulo scheduling in the SparcV9 backend
119
120N: Andrew Lenharth
121E: alenhar2@cs.uiuc.edu
122W: http://www.lenharth.org/~andrewl/
123D: Alpha backend
124D: Sampling based profiling
125
126N: Duraid Madina
127E: duraid@octopus.com.au
128W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
129D: IA64 backend
130
131N: Michael McCracken
132E: michael.mccracken@gmail.com
133D: Line number support for llvmgcc
134
135N: Vladimir Merzliakov
136E: wanderer@rsu.ru
137D: Test suite fixes for FreeBSD
138
139N: Morten Ofstad
140E: morten@hue.no
141D: Visual C++ compatibility fixes 
142
143N: Vladimir Prus
144W: http://vladimir_prus.blogspot.com
145E: ghost@cs.msu.su
146D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
147
148N: Ruchira Sasanka
149E: sasanka@uiuc.edu
150D: Graph coloring register allocator for the Sparc64 backend
151
152N: Anand Shukla
153E: ashukla@cs.uiuc.edu
154D: The `paths' pass
155
156N: Reid Spencer
157E: rspencer@x10sys.com
158W: http://llvm.x10sys.com/rspencer
159D: Stacker, llvmc, llvm-ld, llvm-ar, lib/Archive, lib/Linker, lib/System, 
160D: bytecode enhancements, symtab hacking, unoverloading of intrinsics, makefile 
161D: and configuration system, documentation.
162
163N: Adam Treat
164E: manyoso@yahoo.com
165D: C++ bugs filed, and C++ front-end bug fixes.
166
167N: Bill Wendling
168E: wendling@isanbard.org
169D: The `Lower Setjmp/Longjmp' pass, improvements to the -lowerswitch pass.
170
171N: Patrick Jenkins
172E: patjenk@wam.umd.edu
173D: Nightly Tester
174