OSDN Git Service

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