Adding a StringPool data structure, which GC will use.
[oota-llvm.git] / CREDITS.TXT
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!
5
6 The list is sorted by name 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), and snail-mail address
9 (S).
10
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
15
16 N: Owen Anderson
17 E: resistor@mac.com
18 D: LCSSA pass and related LoopUnswitch work
19 D: GVNPRE pass, TargetData refactoring, random improvements
20
21 N: Henrik Bach
22 D: MingW Win32 API portability layer
23
24 N: Nate Begeman
25 E: natebegeman@mac.com
26 D: PowerPC backend developer
27 D: Target-independent code generator and analysis improvements
28
29 N: Daniel Berlin
30 E: dberlin@dberlin.org
31 D: ET-Forest implementation.
32 D: Sparse bitmap
33
34 N: Neil Booth
35 E: neil@daikokuya.co.uk
36 D: APFloat implementation.  
37
38 N: Misha Brukman
39 E: brukman+llvm@uiuc.edu
40 W: http://misha.brukman.net
41 D: Portions of X86 and Sparc JIT compilers, PowerPC backend
42 D: Incremental bytecode loader
43
44 N: Cameron Buschardt
45 E: buschard@uiuc.edu
46 D: The `mem2reg' pass - promotes values stored in memory to registers
47
48 N: Chandler Carruth
49 E: chandlerc@gmail.com
50 D: LinkTimeOptimizer for Linux, via binutils integration, and C API
51
52 N: Casey Carter
53 E: ccarter@uiuc.edu
54 D: Fixes to the Reassociation pass, various improvement patches
55
56 N: Evan Cheng
57 E: evan.cheng@apple.com
58 D: ARM and X86 backends
59 D: Instruction scheduler improvements
60 D: Register allocator improvements
61 D: Loop optimizer improvements
62 D: Target-independent code generator improvements
63
64 N: Jeff Cohen
65 E: jeffc@jolt-lang.org
66 W: http://jolt-lang.org
67 D: Native Win32 API portability layer
68
69 N: John T. Criswell
70 E: criswell@uiuc.edu
71 D: Original Autoconf support, documentation improvements, bug fixes
72
73 N: Rafael Avila de Espindola
74 E: rafael.espindola@gmail.com
75 D: The ARM backend
76
77 N: Alkis Evlogimenos
78 E: alkis@evlogimenos.com
79 D: Linear scan register allocator, many codegen improvements, Java frontend
80
81 N: Brian Gaeke
82 E: gaeke@uiuc.edu
83 W: http://www.students.uiuc.edu/~gaeke/
84 D: Portions of X86 static and JIT compilers; initial SparcV8 backend
85 D: Dynamic trace optimizer 
86 D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
87
88 N: Nicolas Geoffray
89 E: nicolas.geoffray@lip6.fr
90 W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
91 D: PPC backend fixes for Linux
92
93 N: Louis Gerbarg
94 D: Portions of the PowerPC backend
95
96 N: Saem Ghani
97 E: saemghani@gmail.com
98 D: Callgraph class cleanups
99
100 N: Dan Gohman
101 E: djg@cray.com
102 D: Miscellaneous bug fixes
103
104 N: David Greene
105 E: greened@obbligato.org
106 D: Miscellaneous bug fixes
107 D: Register allocation refactoring
108
109 N: Gordon Henriksen
110 E: gordonhenriksen@mac.com
111 D: Pluggable GC support
112 D: C interface
113 D: Ocaml bindings
114
115 N: Raul Fernandes Herbster
116 E: raul@dsc.ufcg.edu.br
117 D: JIT support for ARM
118
119 N: Paolo Invernizzi
120 E: arathorn@fastwebnet.it
121 D: Visual C++ compatibility fixes 
122
123 N: Patrick Jenkins
124 E: patjenk@wam.umd.edu
125 D: Nightly Tester
126
127 N: Brad Jones
128 E: kungfoomaster@nondot.org
129 D: Support for packed types
130
131 N: Dale Johannesen
132 E: dalej@apple.com
133 D: ARM constant islands improvements
134 D: Tail merging improvements
135 D: Rewrite X87 back end
136 D: Use APFloat for floating point constants widely throughout compiler
137 D: Implement X87 long double
138
139 N: Eric Kidd
140 W: http://randomhacks.net/
141 D: llvm-config script
142
143 N: Anton Korobeynikov
144 E: asl@math.spbu.ru
145 D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
146 D: x86/linux PIC codegen, aliases, regparm/visibility attributes
147 D: Switch lowering refactoring
148
149 N: Sumant Kowshik
150 E: kowshik@uiuc.edu
151 D: Author of the original C backend
152
153 N: Christopher Lamb
154 E: christopher.lamb@gmail.com
155 D: aligned load/store support, parts of noalias and restrict support
156 D: vreg subreg infrastructure, X86 codegen improvements based on subregs
157
158 N: Jim Laskey
159 E: jlaskey@apple.com
160 D: Improvements to the PPC backend, instruction scheduling
161 D: Debug and Dwarf implementation
162 D: Auto upgrade mangler 
163 D: llvm-gcc4 svn wrangler
164
165 N: Chris Lattner
166 E: sabre@nondot.org
167 W: http://nondot.org/~sabre/
168 D: Primary architect of LLVM
169
170 N: Tanya Lattner (Tanya Brethour)
171 E: tonic@nondot.org
172 W: http://nondot.org/~tonic/
173 D: The initial llvm-ar tool, converted regression testsuite to dejagnu
174 D: Modulo scheduling in the SparcV9 backend
175 D: Release manager (1.7+)
176
177 N: Andrew Lenharth
178 E: alenhar2@cs.uiuc.edu
179 W: http://www.lenharth.org/~andrewl/
180 D: Alpha backend
181 D: Sampling based profiling
182
183 N: Nick Lewycky
184 E: nicholas@mxc.ca
185 D: PredicateSimplifier pass
186
187 N: Bruno Cardoso Lopes
188 E: bruno.cardoso@gmail.com
189 W: http://www.brunocardoso.org
190 D: The Mips backend
191
192 N: Duraid Madina
193 E: duraid@octopus.com.au
194 W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
195 D: IA64 backend, BigBlock register allocator
196
197 N: Michael McCracken
198 E: michael.mccracken@gmail.com
199 D: Line number support for llvmgcc
200
201 N: Vladimir Merzliakov
202 E: wanderer@rsu.ru
203 D: Test suite fixes for FreeBSD
204
205 N: Scott Michel
206 E: scottm@aero.org
207 D: Added STI Cell SPU backend.
208
209 N: Morten Ofstad
210 E: morten@hue.no
211 D: Visual C++ compatibility fixes 
212
213 N: Devang Patel
214 E: dpatel@apple.com
215 D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
216 D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
217 D: Optimizer improvements, Loop Index Split
218
219 N: Vladimir Prus
220 W: http://vladimir_prus.blogspot.com
221 E: ghost@cs.msu.su
222 D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
223
224 N: Roman Samoilov
225 E: roman@codedgers.com
226 D: MSIL backend
227
228 N: Duncan Sands
229 E: baldrick@free.fr
230 D: Ada front-end, exception handling improvements
231
232 N: Ruchira Sasanka
233 E: sasanka@uiuc.edu
234 D: Graph coloring register allocator for the Sparc64 backend
235
236 N: Arnold Schwaighofer
237 E: arnold.schwaighofer@gmail.com
238 D: Tail call optimization for the x86 backend
239
240 N: Anand Shukla
241 E: ashukla@cs.uiuc.edu
242 D: The `paths' pass
243
244 N: Reid Spencer
245 E: rspencer@reidspencer.com
246 W: http://reidspencer.com/
247 D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
248
249 N: Adam Treat
250 E: manyoso@yahoo.com
251 D: C++ bugs filed, and C++ front-end bug fixes.
252
253 N: Lauro Ramos Venancio
254 E: lauro.venancio@indt.org.br
255 D: ARM backend improvements
256 D: Thread Local Storage implementation
257
258 N: Bill Wendling
259 E: isanbard@gmail.com
260 W: http://web.mac.com/bwendling/
261 D: Darwin exception handling
262 D: MMX & SSSE3 instructions
263 D: SPEC2006 support