* gcc.h (lang_specific_driver): Constify second argument.
[official-gcc.git] / gcc / contrib.texi
blob4fdcd8c4182af20aff6ae43aedadff8fd39b514d
1 The GCC project would like to thank its many contributors.  Without them the
2 project would not have been nearly as successful as it has been.  Any omissions
3 in this list are accidental.  Feel free to contact
4 @code{law@@cygnus.com} if you have been left out
5 or some of your contributions are not listed.  Please keep this list in
6 alphabetical order.
8 @itemize @bullet
10 @item
11 Analog Devices helped implement the support for complex data types
12 and iterators.
14 @item
15 James van Artsdalen wrote the code that makes efficient use of
16 the Intel 80387 register stack.
18 @item
19 Alasdair Baird for various bugfixes.
21 @item
22 Gerald Baumgartner added the signature extension to the C++ front-end.
24 @item
25 Per Bothner for various improvements to our infrastructure for
26 supporting new languages.  Chill and Java.
28 @item
29 Devon Bowen helped port GCC to the Tahoe.
31 @item
32 Don Bowman for mips-vxworks contributions.
34 @item
35 Dave Brolley for work on cpplib and Chill.
37 @item
38 Robert Brown implemented the support for Encore 32000 systems.
40 @item
41 Christian Bruel for improvements to local store elimination.
43 @item
44 Herman A.J. ten Brugge for various fixes.
46 @item
47 Joe Buck for his guidance and leadership via the steering committee.
49 @item
50 Craig Burley for leadership of the Fortran effort.
52 @item
53 John Carr for his alias work, SPARC hacking, infrastructure improvements,
54 direction via the steering committee, loop optimizations, etc.
56 @item
57 Steve Chamberlain wrote the support for the Hitachi SH and H8 processors
58 and the PicoJava processor.
60 @item
61 Scott Christley for his ObjC contributions.
63 @item
64 Branko Cibej for more warning contributions.
66 @item
67 Nick Clifton for arm, mcore, fr30, v850, m32r work, --help, and other random
68 hacking.
70 @item
71 Ralf Corsepius for SH testing and minor bugfixing.
73 @item
74 Stan Cox for care and feeding of the x86 port and lots of behind
75 the scenes hacking.
77 @item
78 Alex Crain provided changes for the 3b1.
80 @item
81 Ian Dall for major improvements to the NS32k port.
83 @item
84 Dario Dariol contributed the four varieties of sample programs
85 that print a copy of their source.
87 @item
88 Ulrich Drepper for his work on the C++ runtime libraries, glibc, 
89  testing of GCC using glibc, ISO C99 support, CFG dumping support, etc.
91 @item
92 Richard Earnshaw for his ongoing work with the ARM.
94 @item
95 David Edelsohn for his direction via the steering committee,
96 ongoing work with the RS6000/PowerPC port, and help cleaning up Haifa
97 loop changes.
99 @item
100 Mark Elbrecht for various DJGPP improvements.
102 @item
103 Ben Elliston for his work to move the Objective-C runtime into its
104 own subdirectory and for his work on autoconf.
106 @item
107 Paul Eggert for random hacking all over gcc.
109 @item
110 Marc Espie for OpenBSD support.
112 @item
113 Doug Evans for much of the global optimization framework, arc, m32r,
114 and SPARC work.
116 @item
117 Fred Fish for BeOS support and Ada fixes.
119 @item
120 Peter Gerwinski for various bugfixes and the Pascal front end.
122 @item
123 Anthony Green for his -Os contributions and Java front end work.
125 @item
126 Kaveh Ghazi for overall direction via the steering committee and
127 amazing work to make -W -Wall useful.
129 @item
130 Judy Goldberg for c++ contributions.
132 @item
133 Torbjorn Granlund for various fixes and the c-torture testsuite,
134 multiply- and divide-by-constant optimization, improved long long support,
135 and improved leaf function register allocation.
137 @item
138 Michael K. Gschwind contributed the port to the PDP-11.
140 @item
141 Ron Guilmette implemented the @code{protoize} and @code{unprotoize}
142 tools, the support for Dwarf symbolic debugging information, and much of
143 the support for System V Release 4.  He has also worked heavily on the
144 Intel 386 and 860 support.
146 @item
147 Bruno Haible for improvements in the runtime overhead for EH, new
148 warnings and assorted bugfixes.
150 @item
151 Andrew Haley for his Java work.
153 @item
154 Chris Hanson assisted in making GCC work on HP-UX for the 9000 series 300.
156 @item
157 Michael Hayes for various thankless work he's done trying to get
158 the c30/c40 ports functional.  Lots of loop and unroll improvements and
159 fixes.
161 @item
162 Kate Hedstrom for staking the g77 folks with an initial testsuite.
164 @item
165 Richard Henderson for his ongoing SPARC and alpha work, loop opts, and
166 generally fixing lots of old problems we've ignored for years, flow
167 rewrite and lots of stuff I've forgotten.
169 @item
170 Nobuyuki Hikichi of Software Research Associates, Tokyo, contributed
171 the support for the Sony NEWS machine.
173 @item
174 Manfred Hollstein for his ongoing work to keep the m88k alive, lots
175 of testing an bugfixing, particularly of our configury code.
177 @item
178 Steve Holmgren for MachTen patches.
180 @item
181 Jan Hubicka for his x86 port improvements.
183 @item
184 Christian Iseli for various bugfixes.
186 @item
187 Kamil Iskra for general m68k hacking.
189 @item
190 Lee Iverson for random fixes and mips testing.
192 @item
193 Andreas Jaeger for various fixes to the MIPS port
195 @item
196 Jakub Jelinek for his SPARC work and sibling call optimizations.
198 @item
199 J. Kean Johnston for OpenServer support.
201 @item
202 Klaus Kaempf for his ongoing work to make alpha-vms a viable target.
204 @item
205 David Kashtan of SRI adapted GCC to VMS.
207 @item
208 Richard Kenner of the New York University Ultracomputer Research
209 Laboratory wrote the machine descriptions for the AMD 29000, the DEC
210 Alpha, the IBM RT PC, and the IBM RS/6000 as well as the support for
211 instruction attributes.  He also made changes to better support RISC
212 processors including changes to common subexpression elimination,
213 strength reduction, function calling sequence handling, and condition
214 code support, in addition to generalizing the code for frame pointer
215 elimination and delay slot scheduling.  Richard Kenner was also the
216 head maintainer of GCC for several years.
218 @item
219 Robin Kirkham for cpu32 support.
221 @item
222 Mark Klein for PA improvements.
224 @item
225 Geoffrey Keating for his ongoing work to make the PPC work for Linux.
227 @item
228 Brendan Kehoe for his ongoing work with g++.
230 @item
231 Oliver M. Kellogg of Deutsche Aerospace contributed the port to the
232 MIL-STD-1750A.
234 @item
235 Mumit Khan for various contributions to the cygwin and mingw32 ports and
236 maintaining binary releases for Windows hosts.
238 @item
239 Thomas Koenig for various bugfixes.
241 @item
242 Bruce Korb for the new and improved fixincludes code.
244 @item
245 Benjamin Kosnik for his g++ work.
247 @item
248 Ted Lemon wrote parts of the RTL reader and printer.
250 @item
251 Charles LaBrec contributed the support for the Integrated Solutions
252 68020 system.
254 @item
255 Jeff Law for coordinating the entire project, rolling out snapshots
256 and releases, handling merges from GCC2, and random but extensive
257 hacking.
259 @item
260 Marc Lehmann for his guidance via the steering committee and helping
261 with analysis and improvements of x86 performance.
263 @item
264 Kriang Lerdsuwanakij for improvements to demangler and various c++ fixes.
266 @item
267 Warren Levy major work on libgjc (Java Runtime Library) and random
268 work on the Java front-end.
270 @item
271 Alain Lichnewsky ported GCC to the Mips cpu.
273 @item
274 Robert Lipe for OpenServer support, new testsuites, testing, etc.
276 @item
277 Weiwen Liu for testing and various bugfixes.
279 @item
280 Martin von Löwis for internal consistency checking infrastructure,
281 and various C++ improvements including namespace support.
283 @item
284 Dave Love for his ongoing work with the Fortran front end and 
285 runtime libraries.
287 @item
288 H.J. Lu for his contributions to the steering committee, many x86
289 bug reports, prototype patches, and keeping the Linux ports working.
291 @item
292 Andrew MacLeod for his ongoing work in building a real EH system,
293 various code generation improvements, work on the global optimizer, etc.
295 @item
296 Bob Manson for his behind the scenes work on dejagnu.
298 @item
299 Vladimir Makarov for hacking some ugly i960 problems, PowerPC
300 hacking improvements to compile-time performance and overall knowledge
301 and direction in the area of instruction scheduling.
303 @item
304 Greg McGary for random fixes and (someday) bounded pointers.
306 @item
307 Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS powerpc, haifa,
308 ECOFF debug support, and other assorted hacking.
310 @item
311 Jason Merrill for leading the g++ effort.
313 @item
314 Jason Molenda for major help in the care and feeding of all the services
315 on the gcc.gnu.org (formerly egcs.cygnus.com) machine -- mail, web
316 services, ftp services, etc etc.
318 @item
319 David Mosberger-Tang for various Alpha improvements.
321 @item
322 Stephen Moshier contributed the floating point emulator that assists in
323 cross-compilation and permits support for floating point numbers wider
324 than 64 bits and for ISO C99 support.
326 @item
327 Bill Moyer for his behind the scenes work on various issues.
329 @item
330 David Miller for overall direction via the steering committee, lots of
331 SPARC work, improvements in jump.c and interfacing with the Linux kernel
332 developers.
334 @item
335 Gary Miller ported GCC to Charles River Data Systems machines.
337 @item
338 Mark Mitchell for mountains of
339 C++ work, load/store hoisting out of
340 loops and alias analysis improvements, ISO "restrict" support.
342 @item
343 Alan Modra for various Linux bits and testing.
345 @item
346 Toon Moene for overall leadership via the steering committee, and his
347 ongoing work to make us make Fortran run fast.
349 @item
350 Catherine Moore for fixing various ugly problems we have sent her
351 way, including the haifa bug which was killing the Alpha & PowerPC Linux
352 kernels.
354 @item
355 Philippe De Muyter for his work on the m68k port.
357 @item
358 Joseph Myers for his work on the PDP-11 port.
360 @item
361 Nathan Myers for his work on libstdc++-v3.
363 @item
364 NeXT, Inc.@: donated the front end that supports the Objective C
365 language.
367 @item
368 Hans-Peter Nilsson for improvements to the search engine
369 setup, various documentation fixes and other small fixes.
371 @item
372 Geoff Noer for this work on getting cygwin native builds working.
374 @item
375 Alexandre Oliva for various build infrastructure improvements, scripts and
376 amazing testing work.
378 @item
379 Rainer Orth for random MIPS work, including improvements to our o32
380 ABI support, improvements to dejagnu's MIPS support, etc.
382 @item
383 Melissa O'Neill for various NeXT fixes.
385 @item
386 Paul Petersen wrote the machine description for the Alliant FX/8.
388 @item
389 Alexandre Petit-Bianco for his Java work.
391 @item
392 Matthias Pfaller for major improvements to the NS32k port.
394 @item
395 Gerald Pfeifer for maintenance of the web pages and pointing out lots
396 of problems we need to solve.
398 @item
399 Ovidiu Predescu for his work on the ObjC front end and runtime libraries.
401 @item
402 Ken Raeburn for various improvements to checker, mips ports and various
403 cleanups in the compiler.
405 @item
406 David Reese of Sun Microsystems contributed to the Solaris on PowerPC
407 port.
408 @item
409 Gabriel Dos Reis for contributions and maintenance of libstdc++-v3,
410 including valarray implementation and limits support.
412 @item
413 Joern Rennecke for maintaining the sh port, loop, regmove & reload
414 hacking.
416 @item
417 Gavin Romig-Koch for lots of behind the scenes MIPS work.
419 @item
420 Ken Rose for fixes to our delay slot filling code.
422 @item
423 Paul Rubin wrote most of the preprocessor.
425 @item
426 Andreas Schwab for his work on the m68k port.
428 @item
429 Graham Stott. for various infrastructure improvements.
431 @item
432 Juha Sarlin for improvements to the H8 code generator.
434 @item
435 Greg Satz assisted in making GCC work on HP-UX for the 9000 series 300.
437 @item
438 Peter Schauer wrote the code to allow debugging to work on the Alpha.
440 @item
441 William Schelter did most of the work on the Intel 80386 support.
443 @item
444 Bernd Schmidt for various code generation improvements and major
445 work in the reload pass.
447 @item
448 Franz Sirl for his ongoing work with making the PPC port stable
449 for linux.
451 @item
452 Joel Sherrill for his direction via the steering committee, RTEMS
453 contributions and RTEMS testing.
455 @item
456 Nathan Sidwell for many C++ fixes/improvements.
458 @item
459 Jeffrey Siegal for helping RMS with the original design of GCC, some
460 code which handles the parse tree and RTL data structures, constant
461 folding and help with the original VAX & m68k ports.
463 @item
464 Andrey Slepuhin for assorted AIX hacking.
466 @item
467 Randy Smith finished the Sun FPA support.
469 @item
470 Christopher Smith did the port for Convex machines.
472 @item
473 Scott Snyder for various fixes.
475 @item
476 Richard Stallman, for writing the original gcc and launching the GNU project.
478 @item
479 Jan Stein of the Chalmers Computer Society provided support for
480 Genix, as well as part of the 32000 machine description.
482 @item
483 Nigel Stephens for various mips16 related fixes/improvements.
485 @item
486 Jonathan Stone wrote the machine description for the Pyramid computer.
488 @item
489 Mike Stump for his Elxsi port, g++ contributions over the years and more
490 recently his vxworks contributions
492 @item
493 Shigeya Suzuki for this fixes for the bsdi platforms.
495 @item
496 Ian Lance Taylor for his mips16 work, general configury hacking,
497 fixincludes, etc.
499 @item
500 Holger Teutsch provided the support for the Clipper cpu.
502 @item
503 Michael Tiemann for random bugfixes the first instruction scheduler, 
504 initial C++ support, function integration, NS32k, sparc and M88k 
505 machine description work, delay slot scheduling.
507 @item
508 Gary Thomas for his ongoing work to make the PPC work for Linux.
510 @item
511 Philipp Thomas for random bugfixes throughout the compiler
513 @item
514 Kresten Krab Thorup wrote the run time support for the Objective C
515 language.
517 @item
518 Teemu Torma for thread safe exception handling support.
520 @item
521 Leonard Tower wrote parts of the parser, RTL generator, and RTL
522 definitions, and of the Vax machine description.
524 @item
525 Tom Tromey for internationalization support and his Java work.
527 @item
528 Lassi Tuura for improvements to config.guess to determine HP processor
529 types.
531 @item
532 Todd Vierling for contributions for NetBSD ports.
534 @item
535 Krister Walfridsson for random bugfixes.
537 @item
538 John Wehle for various improvements for the x86 code generator,
539 related infrastructure improvements to help x86 code generation,
540 value range propagation and other work, WE32k port.
542 @item
543 Dale Wiles helped port GCC to the Tahoe.
545 @item
546 Zack Weinberg for major work on cpplib and various other bugfixes.
548 @item
549 Jim Wilson for tackling hard problems in various places that nobody else
550 wanted to work on, strength reduction and other loop optimizations.
552 @item
553 Carlo Wood for various fixes.
555 @item
556 Tom Wood for work on the m88k port.
558 @item
559 Masanobu Yuhara of Fujitsu Laboratories implemented the machine
560 description for the Tron architecture (specifically, the Gmicro).
562 @item
563 Kevin Zachmann helped ported GCC to the Tahoe.
565 @end itemize
568 We'd also like to thank the folks who have contributed time and energy in
569 testing GCC:
571 @itemize @bullet
572 @item
573 David Billinghurst
575 @item
576 Horst von Brand
578 @item
579 Rodney Brown
581 @item
582 Joe Buck
584 @item
585 Craig Burley
587 @item
588 Ulrich Drepper
590 @item
591 David Edelsohn
593 @item
594 Kaveh Ghazi
596 @item
597 Yung Shing Gene
599 @item
600 Richard Henderson
602 @item
603 Manfred Hollstein
605 @item
606 Kate Hedstrom
608 @item
609 Kamil Iskra
611 @item
612 Christian Joensson
614 @item
615 Jeff Law
617 @item
618 Robert Lipe
620 @item
621 Dave Love
623 @item
624 Damon Love
626 @item
627 H.J. Lu
629 @item
630 Mumit Khan
632 @item
633 Matthias Klose
635 @item
636 Martin Knoblauch
638 @item
639 Toon Moene
641 @item
642 David Miller
644 @item
645 Matthias Mueller
647 @item
648 Alexandre Oliva
650 @item
651 Richard Polton
653 @item
654 David Rees
656 @item
657 Peter Schmid
659 @item
660 David Schuler
662 @item
663 Vin Shelton
665 @item
666 Franz Sirl
668 @item
669 Mike Stump
671 @item
672 Carlo Wood
674 @item
675 And many others
676 @end itemize
678 And finally we'd like to thank everyone who uses the compiler, submits bug
679 reports and generally reminds us why we're doing this work in the first place.