2002-06-05 Eric Christopher <echristo@redhat.com>
[official-gcc.git] / gcc / doc / contrib.texi
blob307e9141e0c3d9b181c67442900b31ccfc0f93db
1 @c Copyright (C) 1988,1989,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002
2 @c Free Software Foundation, Inc.
3 @c This is part of the GCC manual.
4 @c For copying conditions, see the file gcc.texi.
6 @node Contributors
7 @unnumbered Contributors to GCC
8 @cindex contributors
10 The GCC project would like to thank its many contributors.  Without them the
11 project would not have been nearly as successful as it has been.  Any omissions
12 in this list are accidental.  Feel free to contact
13 @email{law@@redhat.com} if you have been left out
14 or some of your contributions are not listed.  Please keep this list in
15 alphabetical order.
17 Some projects operating under the GCC project maintain their own list
18 of contributors, such as
19 @uref{http://gcc.gnu.org/libstdc++/,the C++ library}.
21 @itemize @bullet
23 @item
24 Analog Devices helped implement the support for complex data types
25 and iterators.
27 @item
28 John David Anglin for improvements to libstdc++-v3 and the HP-UX port.
30 @item
31 James van Artsdalen wrote the code that makes efficient use of
32 the Intel 80387 register stack.
34 @item
35 Alasdair Baird for various bugfixes.
37 @item
38 Gerald Baumgartner added the signature extension to the C++ front end.
40 @item
41 Neil Booth for work on cpplib, lang hooks, debug hooks and other
42 miscellaneous clean-ups.
44 @item
45 Per Bothner for his direction via the steering committee and various
46 improvements to our infrastructure for supporting new languages.  Chill
47 and Java front end implementations.  Initial implementations of
48 cpplib, fix-header, config.guess, libio, and past C++ library
49 (libg++) maintainer.
51 @item
52 Devon Bowen helped port GCC to the Tahoe.
54 @item
55 Don Bowman for mips-vxworks contributions.
57 @item
58 Dave Brolley for work on cpplib and Chill.
60 @item
61 Robert Brown implemented the support for Encore 32000 systems.
63 @item
64 Christian Bruel for improvements to local store elimination.
66 @item
67 Herman A.J. ten Brugge for various fixes.
69 @item
70 Joe Buck for his direction via the steering committee.
72 @item
73 Craig Burley for leadership of the Fortran effort.
75 @item
76 Paolo Carlini for his work on libstdc++-v3.
78 @item
79 John Carr for his alias work, SPARC hacking, infrastructure improvements,
80 previous contributions to the steering committee, loop optimizations, etc.
82 @item
83 Steve Chamberlain wrote the support for the Hitachi SH and H8 processors
84 and the PicoJava processor.
86 @item
87 Scott Christley for his Objective-C contributions.
89 @item
90 Branko Cibej for more warning contributions.
92 @item
93 Nick Clifton for arm, mcore, fr30, v850, m32r work, @option{--help}, and other random
94 hacking.
96 @item
97 Ralf Corsepius for SH testing and minor bugfixing.
99 @item
100 Stan Cox for care and feeding of the x86 port and lots of behind
101 the scenes hacking.
103 @item
104 Alex Crain provided changes for the 3b1.
106 @item
107 Ian Dall for major improvements to the NS32k port.
109 @item
110 Dario Dariol contributed the four varieties of sample programs
111 that print a copy of their source.
113 @item
114 Ulrich Drepper for his work on the C++ runtime libraries, glibc,
115  testing of GCC using glibc, ISO C99 support, CFG dumping support, etc.
117 @item
118 Richard Earnshaw for his ongoing work with the ARM@.
120 @item
121 David Edelsohn for his direction via the steering committee,
122 ongoing work with the RS6000/PowerPC port, and help cleaning up Haifa
123 loop changes.
125 @item
126 Paul Eggert for random hacking all over GCC@.
128 @item
129 Mark Elbrecht for various DJGPP improvements.
131 @item
132 Ben Elliston for his work to move the Objective-C runtime into its
133 own subdirectory and for his work on autoconf.
135 @item
136 Marc Espie for OpenBSD support.
138 @item
139 Doug Evans for much of the global optimization framework, arc, m32r,
140 and SPARC work.
142 @item
143 Fred Fish for BeOS support and Ada fixes.
145 @item
146 Peter Gerwinski for various bugfixes and the Pascal front end.
148 @item
149 Kaveh Ghazi for his direction via the steering committee and
150 amazing work to make @samp{-W -Wall} useful.
152 @item
153 Judy Goldberg for c++ contributions.
155 @item
156 Torbjorn Granlund for various fixes and the c-torture testsuite,
157 multiply- and divide-by-constant optimization, improved long long
158 support, improved leaf function register allocation, and his direction
159 via the steering committee.
161 @item
162 Anthony Green for his @option{-Os} contributions and Java front end work.
164 @item
165 Michael K. Gschwind contributed the port to the PDP-11.
167 @item
168 Ron Guilmette implemented the @command{protoize} and @command{unprotoize}
169 tools, the support for Dwarf symbolic debugging information, and much of
170 the support for System V Release 4.  He has also worked heavily on the
171 Intel 386 and 860 support.
173 @item
174 Bruno Haible for improvements in the runtime overhead for EH, new
175 warnings and assorted bugfixes.
177 @item
178 Andrew Haley for his Java work.
180 @item
181 Chris Hanson assisted in making GCC work on HP-UX for the 9000 series 300.
183 @item
184 Michael Hayes for various thankless work he's done trying to get
185 the c30/c40 ports functional.  Lots of loop and unroll improvements and
186 fixes.
188 @item
189 Kate Hedstrom for staking the g77 folks with an initial testsuite.
191 @item
192 Richard Henderson for his ongoing SPARC, alpha, and ia32 work, loop
193 opts, and generally fixing lots of old problems we've ignored for
194 years, flow rewrite and lots of further stuff, including reviewing
195 tons of patches.
197 @item
198 Nobuyuki Hikichi of Software Research Associates, Tokyo, contributed
199 the support for the Sony NEWS machine.
201 @item
202 Manfred Hollstein for his ongoing work to keep the m88k alive, lots
203 of testing an bugfixing, particularly of our configury code.
205 @item
206 Steve Holmgren for MachTen patches.
208 @item
209 Jan Hubicka for his x86 port improvements.
211 @item
212 Christian Iseli for various bugfixes.
214 @item
215 Kamil Iskra for general m68k hacking.
217 @item
218 Lee Iverson for random fixes and MIPS testing.
220 @item
221 Andreas Jaeger for various fixes to the MIPS port
223 @item
224 Jakub Jelinek for his SPARC work and sibling call optimizations as well
225 as lots of bug fixes and test cases.
227 @item
228 Janis Johnson for ia64 testing and fixes and for her quality improvement
229 sidetracks.
231 @item
232 J. Kean Johnston for OpenServer support.
234 @item
235 Klaus Kaempf for his ongoing work to make alpha-vms a viable target.
237 @item
238 David Kashtan of SRI adapted GCC to VMS@.
240 @item
241 Geoffrey Keating for his ongoing work to make the PPC work for GNU/Linux
242 and his automatic regression tester.
244 @item
245 Brendan Kehoe for his ongoing work with g++.
247 @item
248 Oliver M. Kellogg of Deutsche Aerospace contributed the port to the
249 MIL-STD-1750A@.
251 @item
252 Richard Kenner of the New York University Ultracomputer Research
253 Laboratory wrote the machine descriptions for the AMD 29000, the DEC
254 Alpha, the IBM RT PC, and the IBM RS/6000 as well as the support for
255 instruction attributes.  He also made changes to better support RISC
256 processors including changes to common subexpression elimination,
257 strength reduction, function calling sequence handling, and condition
258 code support, in addition to generalizing the code for frame pointer
259 elimination and delay slot scheduling.  Richard Kenner was also the
260 head maintainer of GCC for several years.
262 @item
263 Mumit Khan for various contributions to the cygwin and mingw32 ports and
264 maintaining binary releases for Windows hosts.
266 @item
267 Robin Kirkham for cpu32 support.
269 @item
270 Mark Klein for PA improvements.
272 @item
273 Thomas Koenig for various bugfixes.
275 @item
276 Bruce Korb for the new and improved fixincludes code.
278 @item
279 Benjamin Kosnik for his g++ work and for leading the libstdc++-v3 effort.
281 @item
282 Charles LaBrec contributed the support for the Integrated Solutions
283 68020 system.
285 @item
286 Jeff Law for his direction via the steering committee, coordinating the
287 entire egcs project and GCC 2.95, rolling out snapshots and releases,
288 handling merges from GCC2, reviewing tons of patches that might have
289 fallen through the cracks else, and random but extensive hacking.
291 @item
292 Marc Lehmann for his direction via the steering committee and helping
293 with analysis and improvements of x86 performance.
295 @item
296 Ted Lemon wrote parts of the RTL reader and printer.
298 @item
299 Kriang Lerdsuwanakij for improvements to demangler and various c++ fixes.
301 @item
302 Warren Levy major work on libgcj (Java Runtime Library) and random
303 work on the Java front end.
305 @item
306 Alain Lichnewsky ported GCC to the MIPS CPU.
308 @item
309 Robert Lipe for OpenServer support, new testsuites, testing, etc.
311 @item
312 Weiwen Liu for testing and various bugfixes.
314 @item
315 Dave Love for his ongoing work with the Fortran front end and
316 runtime libraries.
318 @item
319 Martin von L@"owis for internal consistency checking infrastructure,
320 and various C++ improvements including namespace support.
322 @item
323 H.J. Lu for his previous contributions to the steering committee, many x86
324 bug reports, prototype patches, and keeping the GNU/Linux ports working.
326 @item
327 Greg McGary for random fixes and (someday) bounded pointers.
329 @item
330 Andrew MacLeod for his ongoing work in building a real EH system,
331 various code generation improvements, work on the global optimizer, etc.
333 @item
334 Vladimir Makarov for hacking some ugly i960 problems, PowerPC hacking
335 improvements to compile-time performance, overall knowledge and
336 direction in the area of instruction scheduling, and design and
337 implementation of the automaton based instruction scheduler.
339 @item
340 Bob Manson for his behind the scenes work on dejagnu.
342 @item
343 Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS,
344 powerpc, haifa, ECOFF debug support, and other assorted hacking.
346 @item
347 Jason Merrill for his direction via the steering committee and leading
348 the g++ effort.
350 @item
351 David Miller for his direction via the steering committee, lots of
352 SPARC work, improvements in jump.c and interfacing with the Linux kernel
353 developers.
355 @item
356 Gary Miller ported GCC to Charles River Data Systems machines.
358 @item
359 Mark Mitchell for his direction via the steering committee, mountains of
360 C++ work, load/store hoisting out of loops, alias analysis improvements,
361 ISO C @code{restrict} support, and serving as release manager for GCC 3.x.
363 @item
364 Alan Modra for various GNU/Linux bits and testing.
366 @item
367 Toon Moene for his direction via the steering committee, Fortran
368 maintenance, and his ongoing work to make us make Fortran run fast.
370 @item
371 Jason Molenda for major help in the care and feeding of all the services
372 on the gcc.gnu.org (formerly egcs.cygnus.com) machine---mail, web
373 services, ftp services, etc etc.
375 @item
376 Catherine Moore for fixing various ugly problems we have sent her
377 way, including the haifa bug which was killing the Alpha & PowerPC
378 Linux kernels.
380 @item
381 David Mosberger-Tang for various Alpha improvements.
383 @item
384 Stephen Moshier contributed the floating point emulator that assists in
385 cross-compilation and permits support for floating point numbers wider
386 than 64 bits and for ISO C99 support.
388 @item
389 Bill Moyer for his behind the scenes work on various issues.
391 @item
392 Philippe De Muyter for his work on the m68k port.
394 @item
395 Joseph S. Myers for his work on the PDP-11 port, format checking and ISO
396 C99 support, and continuous emphasis on (and contributions to) documentation.
398 @item
399 Nathan Myers for his work on libstdc++-v3.
401 @item
402 NeXT, Inc.@: donated the front end that supports the Objective-C
403 language.
405 @item
406 Hans-Peter Nilsson for the CRIS and MMIX ports, improvements to the search
407 engine setup, various documentation fixes and other small fixes.
409 @item
410 Geoff Noer for this work on getting cygwin native builds working.
412 @item
413 David O'Brien for the FreeBSD/alpha, FreeBSD/AMD x86-64, FreeBSD/ARM,
414 FreeBSD/PowerPC, and FreeBSD/SPARC64 ports and related infrastructure
415 improvements.
417 @item
418 Alexandre Oliva for various build infrastructure improvements, scripts and
419 amazing testing work.
421 @item
422 Melissa O'Neill for various NeXT fixes.
424 @item
425 Rainer Orth for random MIPS work, including improvements to our o32
426 ABI support, improvements to dejagnu's MIPS support, etc.
428 @item
429 Paul Petersen wrote the machine description for the Alliant FX/8.
431 @item
432 Alexandre Petit-Bianco for his Java work.
434 @item
435 Matthias Pfaller for major improvements to the NS32k port.
437 @item
438 Gerald Pfeifer for his direction via the steering committee, pointing
439 out lots of problems we need to solve, maintenance of the web pages, and
440 taking care of documentation maintenance in general.
442 @item
443 Ovidiu Predescu for his work on the Objective-C front end and runtime
444 libraries.
446 @item
447 Ken Raeburn for various improvements to checker, MIPS ports and various
448 cleanups in the compiler.
450 @item
451 David Reese of Sun Microsystems contributed to the Solaris on PowerPC
452 port.
454 @item
455 Gabriel Dos Reis for contributions and maintenance of libstdc++-v3,
456 including valarray implementation and limits support.
458 @item
459 Joern Rennecke for maintaining the sh port, loop, regmove & reload
460 hacking.
462 @item
463 Loren J. Rittle for improvements to libstdc++-v3 and the FreeBSD port.
465 @item
466 Craig Rodrigues for processing tons of bug reports.
468 @item
469 Gavin Romig-Koch for lots of behind the scenes MIPS work.
471 @item
472 Ken Rose for fixes to our delay slot filling code.
474 @item
475 Paul Rubin wrote most of the preprocessor.
477 @item
478 Juha Sarlin for improvements to the H8 code generator.
480 @item
481 Greg Satz assisted in making GCC work on HP-UX for the 9000 series 300.
483 @item
484 Peter Schauer wrote the code to allow debugging to work on the Alpha.
486 @item
487 William Schelter did most of the work on the Intel 80386 support.
489 @item
490 Bernd Schmidt for various code generation improvements and major
491 work in the reload pass as well a serving as release manager for
492 GCC 2.95.3.
494 @item
495 Andreas Schwab for his work on the m68k port.
497 @item
498 Joel Sherrill for his direction via the steering committee, RTEMS
499 contributions and RTEMS testing.
501 @item
502 Nathan Sidwell for many C++ fixes/improvements.
504 @item
505 Jeffrey Siegal for helping RMS with the original design of GCC, some
506 code which handles the parse tree and RTL data structures, constant
507 folding and help with the original VAX & m68k ports.
509 @item
510 Franz Sirl for his ongoing work with making the PPC port stable
511 for linux.
513 @item
514 Andrey Slepuhin for assorted AIX hacking.
516 @item
517 Christopher Smith did the port for Convex machines.
519 @item
520 Randy Smith finished the Sun FPA support.
522 @item
523 Scott Snyder for various fixes.
525 @item
526 Richard Stallman, for writing the original gcc and launching the GNU project.
528 @item
529 Jan Stein of the Chalmers Computer Society provided support for
530 Genix, as well as part of the 32000 machine description.
532 @item
533 Nigel Stephens for various mips16 related fixes/improvements.
535 @item
536 Jonathan Stone wrote the machine description for the Pyramid computer.
538 @item
539 Graham Stott for various infrastructure improvements.
541 @item
542 Mike Stump for his Elxsi port, g++ contributions over the years and more
543 recently his vxworks contributions
545 @item
546 Shigeya Suzuki for this fixes for the bsdi platforms.
548 @item
549 Ian Lance Taylor for his mips16 work, general configury hacking,
550 fixincludes, etc.
552 @item
553 Holger Teutsch provided the support for the Clipper CPU.
555 @item
556 Gary Thomas for his ongoing work to make the PPC work for GNU/Linux.
558 @item
559 Philipp Thomas for random bugfixes throughout the compiler
561 @item
562 Kresten Krab Thorup wrote the run time support for the Objective-C
563 language.
565 @item
566 Michael Tiemann for random bugfixes, the first instruction scheduler,
567 initial C++ support, function integration, NS32k, SPARC and M88k
568 machine description work, delay slot scheduling.
570 @item
571 Teemu Torma for thread safe exception handling support.
573 @item
574 Leonard Tower wrote parts of the parser, RTL generator, and RTL
575 definitions, and of the VAX machine description.
577 @item
578 Tom Tromey for internationalization support and his Java work.
580 @item
581 Lassi Tuura for improvements to config.guess to determine HP processor
582 types.
584 @item
585 Todd Vierling for contributions for NetBSD ports.
587 @item
588 Dean Wakerley for converting the install documentation from HTML to texinfo
589 in time for GCC 3.0.
591 @item
592 Krister Walfridsson for random bugfixes.
594 @item
595 John Wehle for various improvements for the x86 code generator,
596 related infrastructure improvements to help x86 code generation,
597 value range propagation and other work, WE32k port.
599 @item
600 Zack Weinberg for major work on cpplib and various other bugfixes.
602 @item
603 Dale Wiles helped port GCC to the Tahoe.
605 @item
606 Bob Wilson from Tensilica, Inc.@: for the Xtensa port.
608 @item
609 Jim Wilson for his direction via the steering committee, tackling hard
610 problems in various places that nobody else wanted to work on, strength
611 reduction and other loop optimizations.
613 @item
614 Carlo Wood for various fixes.
616 @item
617 Tom Wood for work on the m88k port.
619 @item
620 Masanobu Yuhara of Fujitsu Laboratories implemented the machine
621 description for the Tron architecture (specifically, the Gmicro).
623 @item
624 Kevin Zachmann helped ported GCC to the Tahoe.
626 @end itemize
629 We'd also like to thank the folks who have contributed time and energy in
630 testing GCC:
632 @itemize @bullet
633 @item
634 David Billinghurst
636 @item
637 Horst von Brand
639 @item
640 Rodney Brown
642 @item
643 Joe Buck
645 @item
646 Craig Burley
648 @item
649 Ulrich Drepper
651 @item
652 David Edelsohn
654 @item
655 Yung Shing Gene
657 @item
658 Kaveh Ghazi
660 @item
661 Kate Hedstrom
663 @item
664 Richard Henderson
666 @item
667 Manfred Hollstein
669 @item
670 Kamil Iskra
672 @item
673 Christian Joensson
675 @item
676 Jeff Law
678 @item
679 Robert Lipe
681 @item
682 Damon Love
684 @item
685 Dave Love
687 @item
688 H.J. Lu
690 @item
691 Brad Lucier
693 @item
694 Mumit Khan
696 @item
697 Matthias Klose
699 @item
700 Martin Knoblauch
702 @item
703 David Miller
705 @item
706 Toon Moene
708 @item
709 Matthias Mueller
711 @item
712 Alexandre Oliva
714 @item
715 Richard Polton
717 @item
718 David Rees
720 @item
721 Loren J. Rittle
723 @item
724 Peter Schmid
726 @item
727 David Schuler
729 @item
730 Vin Shelton
732 @item
733 Franz Sirl
735 @item
736 Mike Stump
738 @item
739 Carlo Wood
741 @item
742 And many others
743 @end itemize
745 And finally we'd like to thank everyone who uses the compiler, submits bug
746 reports and generally reminds us why we're doing this work in the first place.