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