2018-06-22 Paul Thomas <pault@gcc.gnu.org>
[official-gcc.git] / gcc / doc / contrib.texi
bloba7af65b7549f8b085c0c9ec987a65a3a18e7eb3f
1 @c Copyright (C) 1988-2018 Free Software Foundation, Inc.
2 @c This is part of the GCC manual.
3 @c For copying conditions, see the file gcc.texi.
5 @node Contributors
6 @unnumbered Contributors to GCC
7 @cindex contributors
9 The GCC project would like to thank its many contributors.  Without them the
10 project would not have been nearly as successful as it has been.  Any omissions
11 in this list are accidental.  Feel free to contact
12 @email{law@@redhat.com} or @email{gerald@@pfeifer.com} if you have been left
13 out or some of your contributions are not listed.  Please keep this list in
14 alphabetical order.
16 @itemize @bullet
18 @item
19 Analog Devices helped implement the support for complex data types
20 and iterators.
22 @item
23 John David Anglin for threading-related fixes and improvements to
24 libstdc++-v3, and the HP-UX port.
26 @item
27 James van Artsdalen wrote the code that makes efficient use of
28 the Intel 80387 register stack.
30 @item
31 Abramo and Roberto Bagnara for the SysV68 Motorola 3300 Delta Series
32 port.
34 @item
35 Alasdair Baird for various bug fixes.
37 @item
38 Giovanni Bajo for analyzing lots of complicated C++ problem reports.
40 @item
41 Peter Barada for his work to improve code generation for new
42 ColdFire cores.
44 @item
45 Gerald Baumgartner added the signature extension to the C++ front end.
47 @item
48 Godmar Back for his Java improvements and encouragement.
50 @item
51 Scott Bambrough for help porting the Java compiler.
53 @item
54 Wolfgang Bangerth for processing tons of bug reports.
56 @item
57 Jon Beniston for his Microsoft Windows port of Java and port to Lattice Mico32.
59 @item
60 Daniel Berlin for better DWARF 2 support, faster/better optimizations,
61 improved alias analysis, plus migrating GCC to Bugzilla.
63 @item
64 Geoff Berry for his Java object serialization work and various patches.
66 @item
67 David Binderman tests weekly snapshots of GCC trunk against Fedora Rawhide
68 for several architectures.
70 @item
71 Laurynas Biveinis for memory management work and DJGPP port fixes.
73 @item
74 Uros Bizjak for the implementation of x87 math built-in functions and
75 for various middle end and i386 back end improvements and bug fixes.
77 @item
78 Eric Blake for helping to make GCJ and libgcj conform to the
79 specifications.
81 @item
82 Janne Blomqvist for contributions to GNU Fortran.
84 @item
85 Hans-J. Boehm for his garbage collector, IA-64 libffi port, and other
86 Java work.
88 @item
89 Segher Boessenkool for helping maintain the PowerPC port and the
90 instruction combiner plus various contributions to the middle end.
92 @item
93 Neil Booth for work on cpplib, lang hooks, debug hooks and other
94 miscellaneous clean-ups.
96 @item
97 Steven Bosscher for integrating the GNU Fortran front end into GCC and for
98 contributing to the tree-ssa branch.
100 @item
101 Eric Botcazou for fixing middle- and backend bugs left and right.
103 @item
104 Per Bothner for his direction via the steering committee and various
105 improvements to the infrastructure for supporting new languages.  Chill
106 front end implementation.  Initial implementations of
107 cpplib, fix-header, config.guess, libio, and past C++ library (libg++)
108 maintainer.  Dreaming up, designing and implementing much of GCJ@.
110 @item
111 Devon Bowen helped port GCC to the Tahoe.
113 @item
114 Don Bowman for mips-vxworks contributions.
116 @item
117 James Bowman for the FT32 port.
119 @item
120 Dave Brolley for work on cpplib and Chill.
122 @item
123 Paul Brook for work on the ARM architecture and maintaining GNU Fortran.
125 @item
126 Robert Brown implemented the support for Encore 32000 systems.
128 @item
129 Christian Bruel for improvements to local store elimination.
131 @item
132 Herman A.J. ten Brugge for various fixes.
134 @item
135 Joerg Brunsmann for Java compiler hacking and help with the GCJ FAQ@.
137 @item
138 Joe Buck for his direction via the steering committee from its creation
139 to 2013.
141 @item
142 Craig Burley for leadership of the G77 Fortran effort.
144 @item
145 Tobias Burnus for contributions to GNU Fortran.
147 @item
148 Stephan Buys for contributing Doxygen notes for libstdc++.
150 @item
151 Paolo Carlini for libstdc++ work: lots of efficiency improvements to
152 the C++ strings, streambufs and formatted I/O, hard detective work on
153 the frustrating localization issues, and keeping up with the problem reports.
155 @item
156 John Carr for his alias work, SPARC hacking, infrastructure improvements,
157 previous contributions to the steering committee, loop optimizations, etc.
159 @item
160 Stephane Carrez for 68HC11 and 68HC12 ports.
162 @item
163 Steve Chamberlain for support for the Renesas SH and H8 processors
164 and the PicoJava processor, and for GCJ config fixes.
166 @item
167 Glenn Chambers for help with the GCJ FAQ@.
169 @item
170 John-Marc Chandonia for various libgcj patches.
172 @item
173 Denis Chertykov for contributing and maintaining the AVR port, the first GCC port
174 for an 8-bit architecture.
176 @item
177 Kito Cheng for his work on the RISC-V port, including bringing up the test
178 suite and maintenance.
180 @item
181 Scott Christley for his Objective-C contributions.
183 @item
184 Eric Christopher for his Java porting help and clean-ups.
186 @item
187 Branko Cibej for more warning contributions.
189 @item
190 The @uref{http://www.gnu.org/software/classpath/,,GNU Classpath project}
191 for all of their merged runtime code.
193 @item
194 Nick Clifton for arm, mcore, fr30, v850, m32r, msp430 rx work,
195 @option{--help}, and other random hacking.
197 @item
198 Michael Cook for libstdc++ cleanup patches to reduce warnings.
200 @item
201 R. Kelley Cook for making GCC buildable from a read-only directory as
202 well as other miscellaneous build process and documentation clean-ups.
204 @item
205 Ralf Corsepius for SH testing and minor bug fixing.
207 @item
208 Fran@,{c}ois-Xavier Coudert for contributions to GNU Fortran.
210 @item
211 Stan Cox for care and feeding of the x86 port and lots of behind
212 the scenes hacking.
214 @item
215 Alex Crain provided changes for the 3b1.
217 @item
218 Ian Dall for major improvements to the NS32k port.
220 @item
221 Paul Dale for his work to add uClinux platform support to the
222 m68k backend.
224 @item
225 Palmer Dabbelt for his work maintaining the RISC-V port.
227 @item
228 Dario Dariol contributed the four varieties of sample programs
229 that print a copy of their source.
231 @item
232 Russell Davidson for fstream and stringstream fixes in libstdc++.
234 @item
235 Bud Davis for work on the G77 and GNU Fortran compilers.
237 @item
238 Mo DeJong for GCJ and libgcj bug fixes.
240 @item
241 Jerry DeLisle for contributions to GNU Fortran.
243 @item
244 DJ Delorie for the DJGPP port, build and libiberty maintenance,
245 various bug fixes, and the M32C, MeP, MSP430, and RL78 ports.
247 @item
248 Arnaud Desitter for helping to debug GNU Fortran.
250 @item
251 Gabriel Dos Reis for contributions to G++, contributions and
252 maintenance of GCC diagnostics infrastructure, libstdc++-v3,
253 including @code{valarray<>}, @code{complex<>}, maintaining the numerics library
254 (including that pesky @code{<limits>} :-) and keeping up-to-date anything
255 to do with numbers.
257 @item
258 Ulrich Drepper for his work on glibc, testing of GCC using glibc, ISO C99
259 support, CFG dumping support, etc., plus support of the C++ runtime
260 libraries including for all kinds of C interface issues, contributing and
261 maintaining @code{complex<>}, sanity checking and disbursement, configuration
262 architecture, libio maintenance, and early math work.
264 @item
265 Fran@,{c}ois Dumont for his work on libstdc++-v3, especially maintaining and
266 improving @code{debug-mode} and associative and unordered containers.
268 @item
269 Zdenek Dvorak for a new loop unroller and various fixes.
271 @item
272 Michael Eager for his work on the Xilinx MicroBlaze port.
274 @item
275 Richard Earnshaw for his ongoing work with the ARM@.
277 @item
278 David Edelsohn for his direction via the steering committee, ongoing work
279 with the RS6000/PowerPC port, help cleaning up Haifa loop changes,
280 doing the entire AIX port of libstdc++ with his bare hands, and for
281 ensuring GCC properly keeps working on AIX@.
283 @item
284 Kevin Ediger for the floating point formatting of num_put::do_put in
285 libstdc++.
287 @item
288 Phil Edwards for libstdc++ work including configuration hackery,
289 documentation maintainer, chief breaker of the web pages, the occasional
290 iostream bug fix, and work on shared library symbol versioning.
292 @item
293 Paul Eggert for random hacking all over GCC@.
295 @item
296 Mark Elbrecht for various DJGPP improvements, and for libstdc++
297 configuration support for locales and fstream-related fixes.
299 @item
300 Vadim Egorov for libstdc++ fixes in strings, streambufs, and iostreams.
302 @item
303 Christian Ehrhardt for dealing with bug reports.
305 @item
306 Ben Elliston for his work to move the Objective-C runtime into its
307 own subdirectory and for his work on autoconf.
309 @item
310 Revital Eres for work on the PowerPC 750CL port.
312 @item
313 Marc Espie for OpenBSD support.
315 @item
316 Doug Evans for much of the global optimization framework, arc, m32r,
317 and SPARC work.
319 @item
320 Christopher Faylor for his work on the Cygwin port and for caring and
321 feeding the gcc.gnu.org box and saving its users tons of spam.
323 @item
324 Fred Fish for BeOS support and Ada fixes.
326 @item
327 Ivan Fontes Garcia for the Portuguese translation of the GCJ FAQ@.
329 @item
330 Peter Gerwinski for various bug fixes and the Pascal front end.
332 @item
333 Kaveh R.@: Ghazi for his direction via the steering committee, amazing
334 work to make @samp{-W -Wall -W* -Werror} useful, and 
335 testing GCC on a plethora of platforms.  Kaveh extends his gratitude to
336 the CAIP Center at Rutgers University for providing him with computing
337 resources to work on Free Software from the late 1980s to 2010.
339 @item
340 John Gilmore for a donation to the FSF earmarked improving GNU Java.
342 @item
343 Judy Goldberg for c++ contributions.
345 @item
346 Torbjorn Granlund for various fixes and the c-torture testsuite,
347 multiply- and divide-by-constant optimization, improved long long
348 support, improved leaf function register allocation, and his direction
349 via the steering committee.
351 @item
352 Jonny Grant for improvements to @code{collect2's} @option{--help} documentation.
354 @item
355 Anthony Green for his @option{-Os} contributions, the moxie port, and
356 Java front end work.
358 @item
359 Stu Grossman for gdb hacking, allowing GCJ developers to debug Java code.
361 @item
362 Michael K. Gschwind contributed the port to the PDP-11.
364 @item
365 Richard Biener for his ongoing middle-end contributions and bug fixes
366 and for release management.
368 @item
369 Ron Guilmette implemented the @command{protoize} and @command{unprotoize}
370 tools, the support for DWARF 1 symbolic debugging information, and much of
371 the support for System V Release 4.  He has also worked heavily on the
372 Intel 386 and 860 support.
374 @item
375 Sumanth Gundapaneni for contributing the CR16 port.
377 @item
378 Mostafa Hagog for Swing Modulo Scheduling (SMS) and post reload GCSE@.
380 @item
381 Bruno Haible for improvements in the runtime overhead for EH, new
382 warnings and assorted bug fixes.
384 @item
385 Andrew Haley for his amazing Java compiler and library efforts.
387 @item
388 Chris Hanson assisted in making GCC work on HP-UX for the 9000 series 300.
390 @item
391 Michael Hayes for various thankless work he's done trying to get
392 the c30/c40 ports functional.  Lots of loop and unroll improvements and
393 fixes.
395 @item
396 Dara Hazeghi for wading through myriads of target-specific bug reports.
398 @item
399 Kate Hedstrom for staking the G77 folks with an initial testsuite.
401 @item
402 Richard Henderson for his ongoing SPARC, alpha, ia32, and ia64 work, loop
403 opts, and generally fixing lots of old problems we've ignored for
404 years, flow rewrite and lots of further stuff, including reviewing
405 tons of patches.
407 @item
408 Aldy Hernandez for working on the PowerPC port, SIMD support, and
409 various fixes.
411 @item
412 Nobuyuki Hikichi of Software Research Associates, Tokyo, contributed
413 the support for the Sony NEWS machine.
415 @item
416 Kazu Hirata for caring and feeding the Renesas H8/300 port and various fixes.
418 @item
419 Katherine Holcomb for work on GNU Fortran.
421 @item
422 Manfred Hollstein for his ongoing work to keep the m88k alive, lots
423 of testing and bug fixing, particularly of GCC configury code.
425 @item
426 Steve Holmgren for MachTen patches.
428 @item
429 Mat Hostetter for work on the TILE-Gx and TILEPro ports.
431 @item
432 Jan Hubicka for his x86 port improvements.
434 @item
435 Falk Hueffner for working on C and optimization bug reports.
437 @item
438 Bernardo Innocenti for his m68k work, including merging of
439 ColdFire improvements and uClinux support.
441 @item
442 Christian Iseli for various bug fixes.
444 @item
445 Kamil Iskra for general m68k hacking.
447 @item
448 Lee Iverson for random fixes and MIPS testing.
450 @item
451 Balaji V. Iyer for Cilk+ development and merging.
453 @item
454 Andreas Jaeger for testing and benchmarking of GCC and various bug fixes.
456 @item
457 Martin Jambor for his work on inter-procedural optimizations, the
458 switch conversion pass, and scalar replacement of aggregates.
460 @item
461 Jakub Jelinek for his SPARC work and sibling call optimizations as well
462 as lots of bug fixes and test cases, and for improving the Java build
463 system.
465 @item
466 Janis Johnson for ia64 testing and fixes, her quality improvement
467 sidetracks, and web page maintenance.
469 @item
470 Kean Johnston for SCO OpenServer support and various fixes.
472 @item
473 Tim Josling for the sample language treelang based originally on Richard
474 Kenner's ``toy'' language.
476 @item
477 Nicolai Josuttis for additional libstdc++ documentation.
479 @item
480 Klaus Kaempf for his ongoing work to make alpha-vms a viable target.
482 @item
483 Steven G. Kargl for work on GNU Fortran.
485 @item
486 David Kashtan of SRI adapted GCC to VMS@.
488 @item
489 Ryszard Kabatek for many, many libstdc++ bug fixes and optimizations of
490 strings, especially member functions, and for auto_ptr fixes.
492 @item
493 Geoffrey Keating for his ongoing work to make the PPC work for GNU/Linux
494 and his automatic regression tester.
496 @item
497 Brendan Kehoe for his ongoing work with G++ and for a lot of early work
498 in just about every part of libstdc++.
500 @item
501 Oliver M. Kellogg of Deutsche Aerospace contributed the port to the
502 MIL-STD-1750A@.
504 @item
505 Richard Kenner of the New York University Ultracomputer Research
506 Laboratory wrote the machine descriptions for the AMD 29000, the DEC
507 Alpha, the IBM RT PC, and the IBM RS/6000 as well as the support for
508 instruction attributes.  He also made changes to better support RISC
509 processors including changes to common subexpression elimination,
510 strength reduction, function calling sequence handling, and condition
511 code support, in addition to generalizing the code for frame pointer
512 elimination and delay slot scheduling.  Richard Kenner was also the
513 head maintainer of GCC for several years.
515 @item
516 Mumit Khan for various contributions to the Cygwin and Mingw32 ports and
517 maintaining binary releases for Microsoft Windows hosts, and for massive libstdc++
518 porting work to Cygwin/Mingw32.
520 @item
521 Robin Kirkham for cpu32 support.
523 @item
524 Mark Klein for PA improvements.
526 @item
527 Thomas Koenig for various bug fixes.
529 @item
530 Bruce Korb for the new and improved fixincludes code.
532 @item
533 Benjamin Kosnik for his G++ work and for leading the libstdc++-v3 effort.
535 @item
536 Maxim Kuvyrkov for contributions to the instruction scheduler, the Android 
537 and m68k/Coldfire ports, and optimizations.
539 @item
540 Charles LaBrec contributed the support for the Integrated Solutions
541 68020 system.
543 @item
544 Asher Langton and Mike Kumbera for contributing Cray pointer support
545 to GNU Fortran, and for other GNU Fortran improvements.
547 @item
548 Jeff Law for his direction via the steering committee, coordinating the
549 entire egcs project and GCC 2.95, rolling out snapshots and releases,
550 handling merges from GCC2, reviewing tons of patches that might have
551 fallen through the cracks else, and random but extensive hacking.
553 @item
554 Walter Lee for work on the TILE-Gx and TILEPro ports.
556 @item
557 Marc Lehmann for his direction via the steering committee and helping
558 with analysis and improvements of x86 performance.
560 @item
561 Victor Leikehman for work on GNU Fortran.
563 @item
564 Ted Lemon wrote parts of the RTL reader and printer.
566 @item
567 Kriang Lerdsuwanakij for C++ improvements including template as template
568 parameter support, and many C++ fixes.
570 @item
571 Warren Levy for tremendous work on libgcj (Java Runtime Library) and
572 random work on the Java front end.
574 @item
575 Alain Lichnewsky ported GCC to the MIPS CPU@.
577 @item
578 Oskar Liljeblad for hacking on AWT and his many Java bug reports and
579 patches.
581 @item
582 Robert Lipe for OpenServer support, new testsuites, testing, etc.
584 @item
585 Chen Liqin for various S+core related fixes/improvement, and for
586 maintaining the S+core port.
588 @item
589 Martin Liska for his work on identical code folding, the sanitizers,
590 HSA, general bug fixing and for running automated regression testing of GCC
591 and reporting numerous bugs.
593 @item
594 Weiwen Liu for testing and various bug fixes.
596 @item
597 Manuel L@'opez-Ib@'a@~nez for improving @option{-Wconversion} and
598 many other diagnostics fixes and improvements.
600 @item
601 Dave Love for his ongoing work with the Fortran front end and
602 runtime libraries.
604 @item
605 Martin von L@"owis for internal consistency checking infrastructure,
606 various C++ improvements including namespace support, and tons of
607 assistance with libstdc++/compiler merges.
609 @item
610 H.J. Lu for his previous contributions to the steering committee, many x86
611 bug reports, prototype patches, and keeping the GNU/Linux ports working.
613 @item
614 Greg McGary for random fixes and (someday) bounded pointers.
616 @item
617 Andrew MacLeod for his ongoing work in building a real EH system,
618 various code generation improvements, work on the global optimizer, etc.
620 @item
621 Vladimir Makarov for hacking some ugly i960 problems, PowerPC hacking
622 improvements to compile-time performance, overall knowledge and
623 direction in the area of instruction scheduling, design and
624 implementation of the automaton based instruction scheduler and
625 design and implementation of the integrated and local register allocators.
627 @item
628 David Malcolm for his work on improving GCC diagnostics, JIT, self-tests
629 and unit testing.
631 @item
632 Bob Manson for his behind the scenes work on dejagnu.
634 @item
635 John Marino for contributing the DragonFly BSD port.
637 @item
638 Philip Martin for lots of libstdc++ string and vector iterator fixes and
639 improvements, and string clean up and testsuites.
641 @item
642 Michael Matz for his work on dominance tree discovery, the x86-64 port,
643 link-time optimization framework and general optimization improvements.
645 @item
646 All of the Mauve project contributors for Java test code.
648 @item
649 Bryce McKinlay for numerous GCJ and libgcj fixes and improvements.
651 @item
652 Adam Megacz for his work on the Microsoft Windows port of GCJ@.
654 @item
655 Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS,
656 powerpc, haifa, ECOFF debug support, and other assorted hacking.
658 @item
659 Jason Merrill for his direction via the steering committee and leading
660 the G++ effort.
662 @item
663 Martin Michlmayr for testing GCC on several architectures using the
664 entire Debian archive.
666 @item
667 David Miller for his direction via the steering committee, lots of
668 SPARC work, improvements in jump.c and interfacing with the Linux kernel
669 developers.
671 @item
672 Gary Miller ported GCC to Charles River Data Systems machines.
674 @item
675 Alfred Minarik for libstdc++ string and ios bug fixes, and turning the
676 entire libstdc++ testsuite namespace-compatible.
678 @item
679 Mark Mitchell for his direction via the steering committee, mountains of
680 C++ work, load/store hoisting out of loops, alias analysis improvements,
681 ISO C @code{restrict} support, and serving as release manager from 2000
682 to 2011.
684 @item
685 Alan Modra for various GNU/Linux bits and testing.
687 @item
688 Toon Moene for his direction via the steering committee, Fortran
689 maintenance, and his ongoing work to make us make Fortran run fast.
691 @item
692 Jason Molenda for major help in the care and feeding of all the services
693 on the gcc.gnu.org (formerly egcs.cygnus.com) machine---mail, web
694 services, ftp services, etc etc.  Doing all this work on scrap paper and
695 the backs of envelopes would have been@dots{} difficult.
697 @item
698 Catherine Moore for fixing various ugly problems we have sent her
699 way, including the haifa bug which was killing the Alpha & PowerPC
700 Linux kernels.
702 @item
703 Mike Moreton for his various Java patches.
705 @item
706 David Mosberger-Tang for various Alpha improvements, and for the initial
707 IA-64 port.
709 @item
710 Stephen Moshier contributed the floating point emulator that assists in
711 cross-compilation and permits support for floating point numbers wider
712 than 64 bits and for ISO C99 support.
714 @item
715 Bill Moyer for his behind the scenes work on various issues.
717 @item
718 Philippe De Muyter for his work on the m68k port.
720 @item
721 Joseph S. Myers for his work on the PDP-11 port, format checking and ISO
722 C99 support, and continuous emphasis on (and contributions to) documentation.
724 @item
725 Nathan Myers for his work on libstdc++-v3: architecture and authorship
726 through the first three snapshots, including implementation of locale
727 infrastructure, string, shadow C headers, and the initial project
728 documentation (DESIGN, CHECKLIST, and so forth).  Later, more work on
729 MT-safe string and shadow headers.
731 @item
732 Felix Natter for documentation on porting libstdc++.
734 @item
735 Nathanael Nerode for cleaning up the configuration/build process.
737 @item
738 NeXT, Inc.@: donated the front end that supports the Objective-C
739 language.
741 @item
742 Hans-Peter Nilsson for the CRIS and MMIX ports, improvements to the search
743 engine setup, various documentation fixes and other small fixes.
745 @item
746 Geoff Noer for his work on getting cygwin native builds working.
748 @item
749 Vegard Nossum for running automated regression testing of GCC and reporting
750 numerous bugs.
752 @item
753 Diego Novillo for his work on Tree SSA, OpenMP, SPEC performance
754 tracking web pages, GIMPLE tuples, and assorted fixes.
756 @item
757 David O'Brien for the FreeBSD/alpha, FreeBSD/AMD x86-64, FreeBSD/ARM,
758 FreeBSD/PowerPC, and FreeBSD/SPARC64 ports and related infrastructure
759 improvements.
761 @item
762 Alexandre Oliva for various build infrastructure improvements, scripts and
763 amazing testing work, including keeping libtool issues sane and happy.
765 @item
766 Stefan Olsson for work on mt_alloc.
768 @item
769 Melissa O'Neill for various NeXT fixes.
771 @item
772 Rainer Orth for random MIPS work, including improvements to GCC's o32
773 ABI support, improvements to dejagnu's MIPS support, Java configuration
774 clean-ups and porting work, and maintaining the IRIX, Solaris 2, and
775 Tru64 UNIX ports.
777 @item
778 Steven Pemberton for his contribution of @file{enquire} which allowed GCC to
779 determine various properties of the floating point unit and generate
780 @file{float.h} in older versions of GCC.
782 @item
783 Hartmut Penner for work on the s390 port.
785 @item
786 Paul Petersen wrote the machine description for the Alliant FX/8.
788 @item
789 Alexandre Petit-Bianco for implementing much of the Java compiler and
790 continued Java maintainership.
792 @item
793 Matthias Pfaller for major improvements to the NS32k port.
795 @item
796 Gerald Pfeifer for his direction via the steering committee, pointing
797 out lots of problems we need to solve, maintenance of the web pages, and
798 taking care of documentation maintenance in general.
800 @item
801 Marek Polacek for his work on the C front end, the sanitizers and general
802 bug fixing.
804 @item
805 Andrew Pinski for processing bug reports by the dozen.
807 @item
808 Ovidiu Predescu for his work on the Objective-C front end and runtime
809 libraries.
811 @item
812 Jerry Quinn for major performance improvements in C++ formatted I/O@.
814 @item
815 Ken Raeburn for various improvements to checker, MIPS ports and various
816 cleanups in the compiler.
818 @item
819 Rolf W. Rasmussen for hacking on AWT@.
821 @item
822 David Reese of Sun Microsystems contributed to the Solaris on PowerPC
823 port.
825 @item
826 John Regehr for running automated regression testing of GCC and reporting
827 numerous bugs.
829 @item
830 Volker Reichelt for running automated regression testing of GCC and reporting
831 numerous bugs and for keeping up with the problem reports.
833 @item
834 Joern Rennecke for maintaining the sh port, loop, regmove & reload
835 hacking and developing and maintaining the Epiphany port.
837 @item
838 Loren J. Rittle for improvements to libstdc++-v3 including the FreeBSD
839 port, threading fixes, thread-related configury changes, critical
840 threading documentation, and solutions to really tricky I/O problems,
841 as well as keeping GCC properly working on FreeBSD and continuous testing.
843 @item
844 Craig Rodrigues for processing tons of bug reports.
846 @item
847 Ola R@"onnerup for work on mt_alloc.
849 @item
850 Gavin Romig-Koch for lots of behind the scenes MIPS work.
852 @item
853 David Ronis inspired and encouraged Craig to rewrite the G77
854 documentation in texinfo format by contributing a first pass at a
855 translation of the old @file{g77-0.5.16/f/DOC} file.
857 @item
858 Ken Rose for fixes to GCC's delay slot filling code.
860 @item
861 Ira Rosen for her contributions to the auto-vectorizer.
863 @item
864 Paul Rubin wrote most of the preprocessor.
866 @item
867 P@'etur Run@'olfsson for major performance improvements in C++ formatted I/O and
868 large file support in C++ filebuf.
870 @item
871 Chip Salzenberg for libstdc++ patches and improvements to locales, traits,
872 Makefiles, libio, libtool hackery, and ``long long'' support.
874 @item
875 Juha Sarlin for improvements to the H8 code generator.
877 @item
878 Greg Satz assisted in making GCC work on HP-UX for the 9000 series 300.
880 @item
881 Roger Sayle for improvements to constant folding and GCC's RTL optimizers
882 as well as for fixing numerous bugs.
884 @item
885 Bradley Schatz for his work on the GCJ FAQ@.
887 @item
888 Peter Schauer wrote the code to allow debugging to work on the Alpha.
890 @item
891 William Schelter did most of the work on the Intel 80386 support.
893 @item
894 Tobias Schl@"uter for work on GNU Fortran.
896 @item
897 Bernd Schmidt for various code generation improvements and major
898 work in the reload pass, serving as release manager for
899 GCC 2.95.3, and work on the Blackfin and C6X ports.
901 @item
902 Peter Schmid for constant testing of libstdc++---especially application
903 testing, going above and beyond what was requested for the release
904 criteria---and libstdc++ header file tweaks.
906 @item
907 Jason Schroeder for jcf-dump patches.
909 @item
910 Andreas Schwab for his work on the m68k port.
912 @item
913 Lars Segerlund for work on GNU Fortran.
915 @item
916 Dodji Seketeli for numerous C++ bug fixes and debug info improvements.
918 @item
919 Tim Shen for major work on @code{<regex>}.
921 @item
922 Joel Sherrill for his direction via the steering committee, RTEMS
923 contributions and RTEMS testing.
925 @item
926 Nathan Sidwell for many C++ fixes/improvements.
928 @item
929 Jeffrey Siegal for helping RMS with the original design of GCC, some
930 code which handles the parse tree and RTL data structures, constant
931 folding and help with the original VAX & m68k ports.
933 @item
934 Kenny Simpson for prompting libstdc++ fixes due to defect reports from
935 the LWG (thereby keeping GCC in line with updates from the ISO)@.
937 @item
938 Franz Sirl for his ongoing work with making the PPC port stable
939 for GNU/Linux.
941 @item
942 Andrey Slepuhin for assorted AIX hacking.
944 @item
945 Trevor Smigiel for contributing the SPU port.
947 @item
948 Christopher Smith did the port for Convex machines.
950 @item
951 Danny Smith for his major efforts on the Mingw (and Cygwin) ports.
952 Retired from GCC maintainership August 2010, having mentored two 
953 new maintainers into the role.
955 @item
956 Randy Smith finished the Sun FPA support.
958 @item
959 Ed Smith-Rowland for his continuous work on libstdc++-v3, special functions,
960 @code{<random>}, and various improvements to C++11 features.
962 @item
963 Scott Snyder for queue, iterator, istream, and string fixes and libstdc++
964 testsuite entries.  Also for providing the patch to G77 to add
965 rudimentary support for @code{INTEGER*1}, @code{INTEGER*2}, and
966 @code{LOGICAL*1}.
968 @item
969 Zdenek Sojka for running automated regression testing of GCC and reporting
970 numerous bugs.
972 @item
973 Arseny Solokha for running automated regression testing of GCC and reporting
974 numerous bugs.
976 @item
977 Jayant Sonar for contributing the CR16 port.
979 @item
980 Brad Spencer for contributions to the GLIBCPP_FORCE_NEW technique.
982 @item
983 Richard Stallman, for writing the original GCC and launching the GNU project.
985 @item
986 Jan Stein of the Chalmers Computer Society provided support for
987 Genix, as well as part of the 32000 machine description.
989 @item
990 Gerhard Steinmetz for running automated regression testing of GCC and reporting
991 numerous bugs.
993 @item
994 Nigel Stephens for various mips16 related fixes/improvements.
996 @item
997 Jonathan Stone wrote the machine description for the Pyramid computer.
999 @item
1000 Graham Stott for various infrastructure improvements.
1002 @item
1003 John Stracke for his Java HTTP protocol fixes.
1005 @item
1006 Mike Stump for his Elxsi port, G++ contributions over the years and more
1007 recently his vxworks contributions
1009 @item
1010 Jeff Sturm for Java porting help, bug fixes, and encouragement.
1012 @item
1013 Zhendong Su for running automated regression testing of GCC and reporting
1014 numerous bugs.
1016 @item
1017 Chengnian Sun for running automated regression testing of GCC and reporting
1018 numerous bugs.
1020 @item
1021 Shigeya Suzuki for this fixes for the bsdi platforms.
1023 @item
1024 Ian Lance Taylor for the Go frontend, the initial mips16 and mips64
1025 support, general configury hacking, fixincludes, etc.
1027 @item
1028 Holger Teutsch provided the support for the Clipper CPU@.
1030 @item
1031 Gary Thomas for his ongoing work to make the PPC work for GNU/Linux.
1033 @item
1034 Paul Thomas for contributions to GNU Fortran.
1036 @item
1037 Philipp Thomas for random bug fixes throughout the compiler
1039 @item
1040 Jason Thorpe for thread support in libstdc++ on NetBSD@.
1042 @item
1043 Kresten Krab Thorup wrote the run time support for the Objective-C
1044 language and the fantastic Java bytecode interpreter.
1046 @item
1047 Michael Tiemann for random bug fixes, the first instruction scheduler,
1048 initial C++ support, function integration, NS32k, SPARC and M88k
1049 machine description work, delay slot scheduling.
1051 @item
1052 Andreas Tobler for his work porting libgcj to Darwin.
1054 @item
1055 Teemu Torma for thread safe exception handling support.
1057 @item
1058 Leonard Tower wrote parts of the parser, RTL generator, and RTL
1059 definitions, and of the VAX machine description.
1061 @item
1062 Daniel Towner and Hariharan Sandanagobalane contributed and
1063 maintain the picoChip port.
1065 @item
1066 Tom Tromey for internationalization support and for his many Java
1067 contributions and libgcj maintainership.
1069 @item
1070 Lassi Tuura for improvements to config.guess to determine HP processor
1071 types.
1073 @item
1074 Petter Urkedal for libstdc++ CXXFLAGS, math, and algorithms fixes.
1076 @item
1077 Andy Vaught for the design and initial implementation of the GNU Fortran
1078 front end.
1080 @item
1081 Brent Verner for work with the libstdc++ cshadow files and their
1082 associated configure steps.
1084 @item
1085 Todd Vierling for contributions for NetBSD ports.
1087 @item
1088 Andrew Waterman for contributing the RISC-V port, as well as maintaining it.
1090 @item
1091 Jonathan Wakely for contributing libstdc++ Doxygen notes and XHTML
1092 guidance and maintaining libstdc++.
1094 @item
1095 Dean Wakerley for converting the install documentation from HTML to texinfo
1096 in time for GCC 3.0.
1098 @item
1099 Krister Walfridsson for random bug fixes.
1101 @item
1102 Feng Wang for contributions to GNU Fortran.
1104 @item
1105 Stephen M. Webb for time and effort on making libstdc++ shadow files
1106 work with the tricky Solaris 8+ headers, and for pushing the build-time
1107 header tree. Also, for starting and driving the @code{<regex>} effort.
1109 @item
1110 John Wehle for various improvements for the x86 code generator,
1111 related infrastructure improvements to help x86 code generation,
1112 value range propagation and other work, WE32k port.
1114 @item
1115 Ulrich Weigand for work on the s390 port.
1117 @item
1118 Janus Weil for contributions to GNU Fortran.
1120 @item
1121 Zack Weinberg for major work on cpplib and various other bug fixes.
1123 @item
1124 Matt Welsh for help with Linux Threads support in GCJ@.
1126 @item
1127 Urban Widmark for help fixing java.io.
1129 @item
1130 Mark Wielaard for new Java library code and his work integrating with
1131 Classpath.
1133 @item
1134 Dale Wiles helped port GCC to the Tahoe.
1136 @item
1137 Bob Wilson from Tensilica, Inc.@: for the Xtensa port.
1139 @item
1140 Jim Wilson for his direction via the steering committee, tackling hard
1141 problems in various places that nobody else wanted to work on, strength
1142 reduction and other loop optimizations.
1144 @item
1145 Paul Woegerer and Tal Agmon for the CRX port.
1147 @item
1148 Carlo Wood for various fixes.
1150 @item
1151 Tom Wood for work on the m88k port.
1153 @item
1154 Chung-Ju Wu for his work on the Andes NDS32 port.
1156 @item
1157 Canqun Yang for work on GNU Fortran.
1159 @item
1160 Masanobu Yuhara of Fujitsu Laboratories implemented the machine
1161 description for the Tron architecture (specifically, the Gmicro).
1163 @item
1164 Kevin Zachmann helped port GCC to the Tahoe.
1166 @item
1167 Ayal Zaks for Swing Modulo Scheduling (SMS).
1169 @item
1170 Qirun Zhang for running automated regression testing of GCC and reporting
1171 numerous bugs.
1173 @item
1174 Xiaoqiang Zhang for work on GNU Fortran.
1176 @item
1177 Gilles Zunino for help porting Java to Irix.
1179 @end itemize
1181 The following people are recognized for their contributions to GNAT,
1182 the Ada front end of GCC:
1183 @itemize @bullet
1184 @item
1185 Bernard Banner
1187 @item
1188 Romain Berrendonner
1190 @item
1191 Geert Bosch
1193 @item
1194 Emmanuel Briot
1196 @item
1197 Joel Brobecker
1199 @item
1200 Ben Brosgol
1202 @item
1203 Vincent Celier
1205 @item
1206 Arnaud Charlet
1208 @item
1209 Chien Chieng
1211 @item
1212 Cyrille Comar
1214 @item
1215 Cyrille Crozes
1217 @item
1218 Robert Dewar
1220 @item
1221 Gary Dismukes
1223 @item
1224 Robert Duff
1226 @item
1227 Ed Falis
1229 @item
1230 Ramon Fernandez
1232 @item
1233 Sam Figueroa
1235 @item
1236 Vasiliy Fofanov
1238 @item
1239 Michael Friess
1241 @item
1242 Franco Gasperoni
1244 @item
1245 Ted Giering
1247 @item
1248 Matthew Gingell
1250 @item
1251 Laurent Guerby
1253 @item
1254 Jerome Guitton
1256 @item
1257 Olivier Hainque
1259 @item
1260 Jerome Hugues
1262 @item
1263 Hristian Kirtchev
1265 @item
1266 Jerome Lambourg
1268 @item
1269 Bruno Leclerc
1271 @item
1272 Albert Lee
1274 @item
1275 Sean McNeil
1277 @item
1278 Javier Miranda
1280 @item
1281 Laurent Nana
1283 @item
1284 Pascal Obry
1286 @item
1287 Dong-Ik Oh
1289 @item
1290 Laurent Pautet
1292 @item
1293 Brett Porter
1295 @item
1296 Thomas Quinot
1298 @item
1299 Nicolas Roche
1301 @item
1302 Pat Rogers
1304 @item
1305 Jose Ruiz
1307 @item
1308 Douglas Rupp
1310 @item
1311 Sergey Rybin
1313 @item
1314 Gail Schenker
1316 @item
1317 Ed Schonberg
1319 @item
1320 Nicolas Setton
1322 @item
1323 Samuel Tardieu
1325 @end itemize
1328 The following people are recognized for their contributions of new
1329 features, bug reports, testing and integration of classpath/libgcj for
1330 GCC version 4.1:
1331 @itemize @bullet
1332 @item
1333 Lillian Angel for @code{JTree} implementation and lots Free Swing
1334 additions and bug fixes.
1336 @item
1337 Wolfgang Baer for @code{GapContent} bug fixes.
1339 @item
1340 Anthony Balkissoon for @code{JList}, Free Swing 1.5 updates and mouse event
1341 fixes, lots of Free Swing work including @code{JTable} editing.
1343 @item
1344 Stuart Ballard for RMI constant fixes.
1346 @item
1347 Goffredo Baroncelli for @code{HTTPURLConnection} fixes.
1349 @item
1350 Gary Benson for @code{MessageFormat} fixes.
1352 @item
1353 Daniel Bonniot for @code{Serialization} fixes.
1355 @item
1356 Chris Burdess for lots of gnu.xml and http protocol fixes, @code{StAX}
1357 and @code{DOM xml:id} support.
1359 @item
1360 Ka-Hing Cheung for @code{TreePath} and @code{TreeSelection} fixes.
1362 @item
1363 Archie Cobbs for build fixes, VM interface updates,
1364 @code{URLClassLoader} updates.
1366 @item
1367 Kelley Cook for build fixes.
1369 @item
1370 Martin Cordova for Suggestions for better @code{SocketTimeoutException}.
1372 @item
1373 David Daney for @code{BitSet} bug fixes, @code{HttpURLConnection}
1374 rewrite and improvements.
1376 @item
1377 Thomas Fitzsimmons for lots of upgrades to the gtk+ AWT and Cairo 2D
1378 support. Lots of imageio framework additions, lots of AWT and Free
1379 Swing bug fixes.
1381 @item
1382 Jeroen Frijters for @code{ClassLoader} and nio cleanups, serialization fixes,
1383 better @code{Proxy} support, bug fixes and IKVM integration.
1385 @item
1386 Santiago Gala for @code{AccessControlContext} fixes.
1388 @item
1389 Nicolas Geoffray for @code{VMClassLoader} and @code{AccessController}
1390 improvements.
1392 @item
1393 David Gilbert for @code{basic} and @code{metal} icon and plaf support
1394 and lots of documenting, Lots of Free Swing and metal theme
1395 additions. @code{MetalIconFactory} implementation.
1397 @item
1398 Anthony Green for @code{MIDI} framework, @code{ALSA} and @code{DSSI}
1399 providers.
1401 @item
1402 Andrew Haley for @code{Serialization} and @code{URLClassLoader} fixes,
1403 gcj build speedups.
1405 @item
1406 Kim Ho for @code{JFileChooser} implementation.
1408 @item
1409 Andrew John Hughes for @code{Locale} and net fixes, URI RFC2986
1410 updates, @code{Serialization} fixes, @code{Properties} XML support and
1411 generic branch work, VMIntegration guide update.
1413 @item
1414 Bastiaan Huisman for @code{TimeZone} bug fixing.
1416 @item
1417 Andreas Jaeger for mprec updates.
1419 @item
1420 Paul Jenner for better @option{-Werror} support.
1422 @item
1423 Ito Kazumitsu for @code{NetworkInterface} implementation and updates.
1425 @item
1426 Roman Kennke for @code{BoxLayout}, @code{GrayFilter} and
1427 @code{SplitPane}, plus bug fixes all over. Lots of Free Swing work
1428 including styled text.
1430 @item
1431 Simon Kitching for @code{String} cleanups and optimization suggestions.
1433 @item
1434 Michael Koch for configuration fixes, @code{Locale} updates, bug and
1435 build fixes.
1437 @item
1438 Guilhem Lavaux for configuration, thread and channel fixes and Kaffe
1439 integration. JCL native @code{Pointer} updates. Logger bug fixes.
1441 @item
1442 David Lichteblau for JCL support library global/local reference
1443 cleanups.
1445 @item
1446 Aaron Luchko for JDWP updates and documentation fixes.
1448 @item
1449 Ziga Mahkovec for @code{Graphics2D} upgraded to Cairo 0.5 and new regex
1450 features.
1452 @item
1453 Sven de Marothy for BMP imageio support, CSS and @code{TextLayout}
1454 fixes. @code{GtkImage} rewrite, 2D, awt, free swing and date/time fixes and
1455 implementing the Qt4 peers.
1457 @item
1458 Casey Marshall for crypto algorithm fixes, @code{FileChannel} lock,
1459 @code{SystemLogger} and @code{FileHandler} rotate implementations, NIO
1460 @code{FileChannel.map} support, security and policy updates.
1462 @item
1463 Bryce McKinlay for RMI work.
1465 @item
1466 Audrius Meskauskas for lots of Free Corba, RMI and HTML work plus
1467 testing and documenting.
1469 @item
1470 Kalle Olavi Niemitalo for build fixes.
1472 @item
1473 Rainer Orth for build fixes.
1475 @item
1476 Andrew Overholt for @code{File} locking fixes.
1478 @item
1479 Ingo Proetel for @code{Image}, @code{Logger} and @code{URLClassLoader}
1480 updates.
1482 @item
1483 Olga Rodimina for @code{MenuSelectionManager} implementation.
1485 @item
1486 Jan Roehrich for @code{BasicTreeUI} and @code{JTree} fixes.
1488 @item
1489 Julian Scheid for documentation updates and gjdoc support.
1491 @item
1492 Christian Schlichtherle for zip fixes and cleanups.
1494 @item
1495 Robert Schuster for documentation updates and beans fixes,
1496 @code{TreeNode} enumerations and @code{ActionCommand} and various
1497 fixes, XML and URL, AWT and Free Swing bug fixes.
1499 @item
1500 Keith Seitz for lots of JDWP work.
1502 @item
1503 Christian Thalinger for 64-bit cleanups, Configuration and VM
1504 interface fixes and @code{CACAO} integration, @code{fdlibm} updates.
1506 @item
1507 Gael Thomas for @code{VMClassLoader} boot packages support suggestions.
1509 @item
1510 Andreas Tobler for Darwin and Solaris testing and fixing, @code{Qt4}
1511 support for Darwin/OS X, @code{Graphics2D} support, @code{gtk+}
1512 updates.
1514 @item
1515 Dalibor Topic for better @code{DEBUG} support, build cleanups and
1516 Kaffe integration. @code{Qt4} build infrastructure, @code{SHA1PRNG}
1517 and @code{GdkPixbugDecoder} updates.
1519 @item
1520 Tom Tromey for Eclipse integration, generics work, lots of bug fixes
1521 and gcj integration including coordinating The Big Merge.
1523 @item
1524 Mark Wielaard for bug fixes, packaging and release management,
1525 @code{Clipboard} implementation, system call interrupts and network
1526 timeouts and @code{GdkPixpufDecoder} fixes.
1528 @end itemize
1531 In addition to the above, all of which also contributed time and energy in
1532 testing GCC, we would like to thank the following for their contributions
1533 to testing:
1535 @itemize @bullet
1536 @item
1537 Michael Abd-El-Malek
1539 @item
1540 Thomas Arend
1542 @item
1543 Bonzo Armstrong
1545 @item
1546 Steven Ashe
1548 @item
1549 Chris Baldwin
1551 @item
1552 David Billinghurst
1554 @item
1555 Jim Blandy
1557 @item
1558 Stephane Bortzmeyer
1560 @item
1561 Horst von Brand
1563 @item
1564 Frank Braun
1566 @item
1567 Rodney Brown
1569 @item
1570 Sidney Cadot
1572 @item
1573 Bradford Castalia
1575 @item
1576 Robert Clark
1578 @item
1579 Jonathan Corbet
1581 @item
1582 Ralph Doncaster
1584 @item
1585 Richard Emberson
1587 @item
1588 Levente Farkas
1590 @item
1591 Graham Fawcett
1593 @item
1594 Mark Fernyhough
1596 @item
1597 Robert A. French
1599 @item
1600 J@"orgen Freyh
1602 @item
1603 Mark K. Gardner
1605 @item
1606 Charles-Antoine Gauthier
1608 @item
1609 Yung Shing Gene
1611 @item
1612 David Gilbert
1614 @item
1615 Simon Gornall
1617 @item
1618 Fred Gray
1620 @item
1621 John Griffin
1623 @item
1624 Patrik Hagglund
1626 @item
1627 Phil Hargett
1629 @item
1630 Amancio Hasty
1632 @item
1633 Takafumi Hayashi
1635 @item
1636 Bryan W. Headley
1638 @item
1639 Kevin B. Hendricks
1641 @item
1642 Joep Jansen
1644 @item
1645 Christian Joensson
1647 @item
1648 Michel Kern
1650 @item
1651 David Kidd
1653 @item
1654 Tobias Kuipers
1656 @item
1657 Anand Krishnaswamy
1659 @item
1660 A. O. V. Le Blanc
1662 @item
1663 llewelly
1665 @item
1666 Damon Love
1668 @item
1669 Brad Lucier
1671 @item
1672 Matthias Klose
1674 @item
1675 Martin Knoblauch
1677 @item
1678 Rick Lutowski
1680 @item
1681 Jesse Macnish
1683 @item
1684 Stefan Morrell
1686 @item
1687 Anon A. Mous
1689 @item
1690 Matthias Mueller
1692 @item
1693 Pekka Nikander
1695 @item
1696 Rick Niles
1698 @item
1699 Jon Olson
1701 @item
1702 Magnus Persson
1704 @item
1705 Chris Pollard
1707 @item
1708 Richard Polton
1710 @item
1711 Derk Reefman
1713 @item
1714 David Rees
1716 @item
1717 Paul Reilly
1719 @item
1720 Tom Reilly
1722 @item
1723 Torsten Rueger
1725 @item
1726 Danny Sadinoff
1728 @item
1729 Marc Schifer
1731 @item
1732 Erik Schnetter
1734 @item
1735 Wayne K. Schroll
1737 @item
1738 David Schuler
1740 @item
1741 Vin Shelton
1743 @item
1744 Tim Souder
1746 @item
1747 Adam Sulmicki
1749 @item
1750 Bill Thorson
1752 @item
1753 George Talbot
1755 @item
1756 Pedro A. M. Vazquez
1758 @item
1759 Gregory Warnes
1761 @item
1762 Ian Watson
1764 @item
1765 David E. Young
1767 @item
1768 And many others
1769 @end itemize
1771 And finally we'd like to thank everyone who uses the compiler, provides
1772 feedback and generally reminds us why we're doing this work in the first
1773 place.