Note
====

This file contains information about people who are permitted to make
changes to various parts of the compiler and associated libraries.

Please do not contact the people in this file directly to report
problems in GCC.

For general information about GCC, please visit:

  http://gcc.gnu.org

To report problems in GCC, please visit:

  http://gcc.gnu.org/bugs/

If you'd like to CC a maintainer in bugzilla, please add @gcc.gnu.org
to the account name given in the Write After Approval section below.
Please use the email address given in <...> for direct email communication.

Note: when adding someone who has commit access to a more specific section,
please also ensure that there is a corresponding entry in the Write After
Approval list, since that list contains the gcc.gnu.org account name.

Note: please verify that sorting is correct with:
./contrib/check-MAINTAINERS.py MAINTAINERS

Maintainers
===========

                        Global Reviewers

Richard Biener                                  <rguenther@suse.de>
Richard Earnshaw                                <richard.earnshaw@arm.com>
Jakub Jelinek                                   <jakub@redhat.com>
Richard Kenner                                  <kenner@nyu.edu>
Jeff Law                                        <jeffrey.law@oss.qualcomm.com>
Michael Meissner                                <gnu@the-meissners.org>
Jason Merrill                                   <jason@redhat.com>
David S. Miller                                 <davem@redhat.com>
Joseph Myers                                    <josmyers@redhat.com>
Andrew Pinski                                   <andrew.pinski@oss.qualcomm.com>
Richard Sandiford                               <rdsandiford@googlemail.com>
Bernd Schmidt                                   <bernds_cb1@t-online.de>
Ian Lance Taylor                                <ian@airs.com>
Jim Wilson                                      <wilson@tuliptree.org>

Note that while global reviewers can approve changes to any part of
the compiler or associated libraries, they still need approval for
their own patches from other maintainers or reviewers.

Also note that maintainership of any area covers changes to web pages,
docs, and the testsuite related to that.

                        CPU Port Maintainers    (CPU alphabetical order)

aarch64 ldp/stp         Alex Coplan             <alex.coplan@arm.com>
aarch64 port            Richard Earnshaw        <richard.earnshaw@arm.com>
aarch64 port            Tamar Christina         <tamar.christina@arm.com>
aarch64 port            Kyrylo Tkachov          <ktkachov@nvidia.com>
alpha port              Richard Henderson       <rth@gcc.gnu.org>
amdgcn port             Julian Brown            <julian@codesourcery.com>
amdgcn port             Andrew Stubbs           <ams@baylibre.com>
arc port                Claudiu Zissulescu      <claziss@gmail.com>
arm port                Nick Clifton            <nickc@redhat.com>
arm port                Richard Earnshaw        <richard.earnshaw@arm.com>
arm port                Ramana Radhakrishnan    <ramanara@nvidia.com>
avr port                Denis Chertykov         <chertykov@gmail.com>
bfin port               Jie Zhang               <jzhang918@gmail.com>
bpf port                Jose E. Marchesi        <jose.marchesi@oracle.com>
c6x port                Bernd Schmidt           <bernds_cb1@t-online.de>
cris port               Hans-Peter Nilsson      <hp@axis.com>
c-sky port              Xianmiao Qu             <cooper.qu@linux.alibaba.com>
c-sky port              Yunhai Shang            <yunhai@linux.alibaba.com>
fr30 port               Nick Clifton            <nickc@redhat.com>
frv port                Nick Clifton            <nickc@redhat.com>
frv port                Alexandre Oliva         <aoliva@gcc.gnu.org>
ft32 port               James Bowman            <james.bowman@ftdichip.com>
h8 port                 Jeff Law                <jeffreyalaw@gmail.com>
hppa port               Jeff Law                <jeffreyalaw@gmail.com>
hppa port               John David Anglin       <dave.anglin@bell.net>
i386 port               Jan Hubicka             <hubicka@ucw.cz>
i386 port               Uros Bizjak             <ubizjak@gmail.com>
i386 vector ISA extns   Kirill Yukhin           <kirill.yukhin@gmail.com>
i386 vector ISA extns   Hongtao Liu             <hongtao.liu@intel.com>
iq2000 port             Nick Clifton            <nickc@redhat.com>
lm32 port               Sebastien Bourdeauducq  <sebastien@milkymist.org>
LoongArch port          Chenghua Xu             <xuchenghua@loongson.cn>
LoongArch port          Lulu Cheng              <chenglulu@loongson.cn>
m32r port               Nick Clifton            <nickc@redhat.com>
m68k port (?)           Jeff Law                <jeffreyalaw@gmail.com>
m68k port               Andreas Schwab          <schwab@linux-m68k.org>
m68k-motorola-sysv port Philippe De Muyter      <phdm@macqel.be>
mcore port              Nick Clifton            <nickc@redhat.com>
microblaze              Michael Eager           <eager@eagercon.com>
mips port               YunQiang Su             <syq@gcc.gnu.org>
mmix port               Hans-Peter Nilsson      <hp@bitrange.com>
mn10300 port            Jeff Law                <jeffreyalaw@gmail.com>
mn10300 port            Alexandre Oliva         <aoliva@gcc.gnu.org>
moxie port              Anthony Green           <green@moxielogic.com>
msp430 port             Nick Clifton            <nickc@redhat.com>
nds32 port              Chung-Ju Wu             <jasonwucj@gmail.com>
nds32 port              Shiva Chen              <shiva0217@gmail.com>
nvptx port              Tom de Vries            <tdevries@suse.de>
nvptx port              Thomas Schwinge         <tschwinge@baylibre.com>
or1k port               Stafford Horne          <shorne@gmail.com>
pdp11 port              Paul Koning             <ni1d@arrl.net>
powerpcspe port         Andrew Jenner           <andrew@codesourcery.com>
pru port                Dimitar Dimitrov        <dimitar@dinux.eu>
riscv port              Kito Cheng              <kito.cheng@gmail.com>
riscv port              Palmer Dabbelt          <palmer@dabbelt.com>
riscv port              Robin Dapp              <rdapp.gcc@gmail.com>
riscv port              Andrew Waterman         <andrew@sifive.com>
riscv port              Jim Wilson              <jim.wilson.gcc@gmail.com>
rs6000/powerpc port     David Edelsohn          <dje.gcc@gmail.com>
rs6000/powerpc port     Segher Boessenkool      <segher@kernel.crashing.org>
rs6000/powerpc port     Kewen Lin               <linkw@gcc.gnu.org>
rs6000 vector extns     Aldy Hernandez          <aldy@quesejoda.com>
rx port                 Nick Clifton            <nickc@redhat.com>
s390 port               Ulrich Weigand          <uweigand@de.ibm.com>
s390 port               Andreas Krebbel         <krebbel@linux.ibm.com>
s390 port               Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
sh port                 Alexandre Oliva         <aoliva@gcc.gnu.org>
sh port                 Oleg Endo               <olegendo@gcc.gnu.org>
sparc port              David S. Miller         <davem@redhat.com>
sparc port              Eric Botcazou           <ebotcazou@libertysurf.fr>
v850 port               Nick Clifton            <nickc@redhat.com>
vax port                Matt Thomas             <matt@3am-software.com>
vax port                Maciej W. Rozycki       <macro@orcam.me.uk>
visium port             Eric Botcazou           <ebotcazou@libertysurf.fr>
x86-64 port             Jan Hubicka             <hubicka@ucw.cz>
xstormy16 port          Nick Clifton            <nickc@redhat.com>
xtensa port             Sterling Augustine      <augustine.sterling@gmail.com>
xtensa port             Max Filippov            <jcmvbkbc@gmail.com>

                        OS Port Maintainers     (OS alphabetical order)

aix                     David Edelsohn          <dje.gcc@gmail.com>
Android sub-port        Maxim Kuvyrkov          <maxim.kuvyrkov@linaro.org>
darwin port             Iain Sandoe             <iain@sandoe.co.uk>
darwin port             Mike Stump              <mikestump@comcast.net>
DJGPP                   DJ Delorie              <dj@delorie.com>
freebsd                 Andreas Tobler          <andreast@gcc.gnu.org>
GNU/Hurd                Thomas Schwinge         <thomas@schwinge.name>
hpux                    John David Anglin       <dave.anglin@bell.net>
solaris                 Rainer Orth             <ro@CeBiTec.Uni-Bielefeld.DE>
netbsd                  Jason Thorpe            <thorpej@netbsd.org>
netbsd                  Krister Walfridsson     <krister.walfridsson@gmail.com>
sh-linux-gnu            Kaz Kojima              <kkojima@gcc.gnu.org>
RTEMS Ports             Joel Sherrill           <joel@oarcorp.com>
RTEMS Ports             Ralf Corsepius          <ralf.corsepius@rtems.org>
RTEMS Ports             Sebastian Huber         <sebastian.huber@embedded-brains.de>
VMS                     Douglas Rupp            <douglas.b.rupp@gmail.com>
VMS                     Tristan Gingold         <tgingold@free.fr>
VxWorks ports           Olivier Hainque         <hainque@adacore.com>
cygwin, mingw-w64       Jonathan Yong           <10walls@gmail.com>

                        Language Front Ends Maintainers

C front end/ISO C99     Joseph Myers            <josmyers@redhat.com>
Ada front end           Arnaud Charlet          <charlet@adacore.com>
Ada front end           Eric Botcazou           <ebotcazou@libertysurf.fr>
Ada front end           Marc Poulhiès           <poulhies@adacore.com>
Ada front end           Pierre-Marie de Rodat   <derodat@adacore.com>
COBOL front end         Robert Dubner           <rdubner@symas.com>
COBOL front end         James K. Lowden         <jklowden@cobolworx.com>
c++                     Jason Merrill           <jason@redhat.com>
c++                     Nathan Sidwell          <nathan@acm.org>
D front end             Iain Buclaw             <ibuclaw@gdcproject.org>
go                      Ian Lance Taylor        <ian@airs.com>
Modula-2 front end      Gaius Mulley            <gaiusmod2@gmail.com>
objective-c/c++         Mike Stump              <mikestump@comcast.net>
objective-c/c++         Iain Sandoe             <iain@sandoe.co.uk>
Rust                    Arthur Cohen            <arthur.cohen@embecosm.com>
Rust                    Philip Herron           <herron.philip@googlemail.com>
Algol 68                Jose E. Marchesi        <jemarch@gnu.org>

                        Various Maintainers

libbacktrace            Ian Lance Taylor        <ian@airs.com>
libcpp                  Per Bothner             <per@bothner.com>
libcpp                  All C and C++ front end maintainers
libcpp                  David Malcolm           <dmalcolm@redhat.com>
fp-bit                  Ian Lance Taylor        <ian@airs.com>
libga68                 Jose E. Marchesi        <jemarch@gnu.org>
libgcc                  Ian Lance Taylor        <ian@airs.com>
libgo                   Ian Lance Taylor        <ian@airs.com>
libgomp                 Jakub Jelinek           <jakub@redhat.com>
libgomp                 Tobias Burnus           <tburnus@baylibre.com>
libgomp (OpenACC)       Thomas Schwinge         <tschwinge@baylibre.com>
libgrust                All Rust front end maintainers
libiberty               Ian Lance Taylor        <ian@airs.com>
libitm                  Torvald Riegel          <triegel@redhat.com>
libobjc                 Nicola Pero             <nicola.pero@meta-innovation.com>
libobjc                 Andrew Pinski           <pinskia@gmail.com>
libquadmath             Tobias Burnus           <tburnus@baylibre.com>
libquadmath             Jakub Jelinek           <jakub@redhat.com>
libvtv                  Caroline Tice           <cmtice@google.com>
libphobos               Iain Buclaw             <ibuclaw@gdcproject.org>
line map                Dodji Seketeli          <dodji@redhat.com>
soft-fp                 Joseph Myers            <josmyers@redhat.com>
scheduler (+ haifa)     Jim Wilson              <wilson@tuliptree.org>
scheduler (+ haifa)     Michael Meissner        <gnu@the-meissners.org>
scheduler (+ haifa)     Jeff Law                <jeffreyalaw@gmail.com>
scheduler (+ haifa)     Vladimir Makarov        <vmakarov@redhat.com>
modulo-scheduler        Roman Zhuykov           <zhroma@ispras.ru>
reorg                   Jeff Law                <jeffreyalaw@gmail.com>
caller-save.cc          Jeff Law                <jeffreyalaw@gmail.com>
callgraph               Jan Hubicka             <hubicka@ucw.cz>
debugging code          Jim Wilson              <wilson@tuliptree.org>
dwarf debugging code    Jason Merrill           <jason@redhat.com>
dwarf debugging code    Cary Coutant            <ccoutant@gmail.com>
c++ runtime libs        Paolo Carlini           <pcarlini@gmail.com>
c++ runtime libs        Ulrich Drepper          <drepper@gmail.com>
c++ runtime libs        Benjamin De Kosnik      <bkoz@gnu.org>
c++ runtime libs        Jonathan Wakely         <jwakely@redhat.com>
c++ runtime libs special modes  François Dumont <fdumont@gcc.gnu.org>
fixincludes             Bruce Korb              <bkorb@gnu.org>
*gimpl*                 Jakub Jelinek           <jakub@redhat.com>
*gimpl*                 Aldy Hernandez          <aldy@quesejoda.com>
*gimpl*                 Jason Merrill           <jason@redhat.com>
gcse.cc                 Jeff Law                <jeffreyalaw@gmail.com>
global opt framework    Jeff Law                <jeffreyalaw@gmail.com>
jump.cc                 David S. Miller         <davem@redhat.com>
web pages               Gerald Pfeifer          <gerald@pfeifer.com>
config.sub/config.guess Ben Elliston            <config-patches@gnu.org>
i18n                    Philipp Thomas          <pth@suse.de>
i18n                    Joseph Myers            <josmyers@redhat.com>
diagnostic messages     Dodji Seketeli          <dodji@redhat.com>
diagnostic messages     David Malcolm           <dmalcolm@redhat.com>
build machinery (*.in)  Paolo Bonzini           <bonzini@gnu.org>
build machinery (*.in)  Nathanael Nerode        <neroden@gcc.gnu.org>
build machinery (*.in)  Alexandre Oliva         <aoliva@gcc.gnu.org>
build machinery (*.in)  Ralf Wildenhues         <Ralf.Wildenhues@gmx.de>
docs co-maintainer      Gerald Pfeifer          <gerald@pfeifer.com>
docs co-maintainer      Joseph Myers            <josmyers@redhat.com>
docs co-maintainer      Sandra Loosemore        <sloosemore@baylibre.com>
docstring relicensing   Gerald Pfeifer          <gerald@pfeifer.com>
docstring relicensing   Joseph Myers            <josmyers@redhat.com>
predict.def             Jan Hubicka             <hubicka@ucw.cz>
gcov                    Jan Hubicka             <hubicka@ucw.cz>
gcov                    Nathan Sidwell          <nathan@acm.org>
option handling         Joseph Myers            <josmyers@redhat.com>
middle-end              Jeff Law                <jeffreyalaw@gmail.com>
middle-end              Ian Lance Taylor        <ian@airs.com>
middle-end              Richard Biener          <rguenther@suse.de>
*vrp, ranger            Aldy Hernandez          <aldy@quesejoda.com>
*vrp, ranger            Andrew MacLeod          <amacleod@redhat.com>
tree-ssa                Andrew MacLeod          <amacleod@redhat.com>
tree browser/unparser   Sebastian Pop           <sebpop@gmail.com>
scev, data dependence   Sebastian Pop           <sebpop@gmail.com>
profile feedback        Jan Hubicka             <hubicka@ucw.cz>
AutoFDO                 Eugene Rozenfeld        <erozen@microsoft.com>
reload                  Ulrich Weigand          <uweigand@de.ibm.com>
RTL optimizers          Eric Botcazou           <ebotcazou@libertysurf.fr>
instruction combiner    Segher Boessenkool      <segher@kernel.crashing.org>
pair fusion             Alex Coplan             <alex.coplan@arm.com>
vectorizer (+ tree-if-conv) Richard Biener      <rguenther@suse.de>
vectorizer (+ tree-if-conv) Tamar Christina     <tamar.christina@arm.com>
vectorizer (+ tree-if-conv) Zdenek Dvorak       <ook@ucw.cz>
loop infrastructure     Zdenek Dvorak           <ook@ucw.cz>
loop ivopts             Bin Cheng               <bin.cheng@linux.alibaba.com>
loop optimizer          Bin Cheng               <bin.cheng@linux.alibaba.com>
OpenACC                 Thomas Schwinge         <tschwinge@baylibre.com>
OpenACC                 Tobias Burnus           <tburnus@baylibre.com>
OpenMP                  Jakub Jelinek           <jakub@redhat.com>
OpenMP                  Tobias Burnus           <tburnus@baylibre.com>
testsuite               Rainer Orth             <ro@CeBiTec.Uni-Bielefeld.DE>
testsuite               Mike Stump              <mikestump@comcast.net>
register allocation     Vladimir Makarov        <vmakarov@redhat.com>
gdbhooks.py             David Malcolm           <dmalcolm@redhat.com>
jit                     David Malcolm           <dmalcolm@redhat.com>
gen* on machine desc    Richard Sandiford       <rdsandiford@googlemail.com>
static analyzer         David Malcolm           <dmalcolm@redhat.com>
forge integration       Claudio Bantaloukas     <claudio.bantaloukas@arm.com>

Note that individuals who maintain parts of the compiler need approval to
check in changes outside of the parts of the compiler they maintain.

                        Reviewers

aarch64 port            Alice Carlotti          <alice.carlotti@arm.com>
aarch64 port            Alex Coplan             <alex.coplan@arm.com>
aarch64 port            Andrew Pinski           <andrew.pinski@oss.qualcomm.com>
aarch64 port            Wilco Dijkstra          <wilco.dijkstra@arm.com>
arm port (MVE)          Christophe Lyon         <christophe.lyon@arm.com>
callgraph               Martin Jambor           <mjambor@suse.cz>
C front end             Marek Polacek           <polacek@redhat.com>
CTF, BTF                Indu Bhagat             <indu.bhagat@oracle.com>
CTF, BTF, bpf port      David Faust             <david.faust@oracle.com>
c++                     Patrick Palka           <ppalka@gcc.gnu.org>
dataflow                Paolo Bonzini           <bonzini@gnu.org>
dataflow                Seongbae Park           <seongbae.park@gmail.com>
dataflow                Kenneth Zadeck          <zadeck@naturalbridge.com>
driver                  Joseph Myers            <josmyers@redhat.com>
Fortran                 Harald Anlauf           <anlauf@gmx.de>
Fortran                 Janne Blomqvist         <jb@gcc.gnu.org>
Fortran                 Tobias Burnus           <tburnus@baylibre.com>
Fortran                 François-Xavier Coudert <fxcoudert@gcc.gnu.org>
Fortran                 Jerry DeLisle           <jvdelisle@gcc.gnu.org>
Fortran                 Erik Edelmann           <erik.edelmann@iki.fi>
Fortran                 Daniel Franke           <franke.daniel@gmail.com>
Fortran                 Thomas König            <tkoenig@gcc.gnu.org>
Fortran                 Daniel Kraft            <d@domob.eu>
Fortran                 Toon Moene              <toon@moene.org>
Fortran                 Mikael Morin            <mikael@gcc.gnu.org>
Fortran                 Tobias Schlüter         <tobias.schlueter@physik.uni-muenchen.de>
Fortran                 Paul Thomas             <pault@gcc.gnu.org>
Fortran                 Janus Weil              <janus@gcc.gnu.org>
Graphite                Tobias Grosser          <grosser@fim.uni-passau.de>
Graphite                Sebastian Pop           <sebpop@gmail.com>
libcpp                  Tom Tromey              <tromey@redhat.com>
libsanitizer, asan.cc   Jakub Jelinek           <jakub@redhat.com>
libsanitizer, asan.cc   Dodji Seketeli          <dodji@redhat.com>
libsanitizer, asan.cc   Kostya Serebryany       <kcc@google.com>
libsanitizer, asan.cc   Dmitry Vyukov           <dvyukov@google.com>
loop optimizer          Zdenek Dvorak           <ook@ucw.cz>
LTO                     Richard Biener          <rguenther@suse.de>
LTO plugin              Cary Coutant            <ccoutant@gmail.com>
Plugin                  Le-Chun Wu              <lcwu@google.com>
register allocation     Peter Bergner           <bergner@tenstorrent.com>
register allocation     Kenneth Zadeck          <zadeck@naturalbridge.com>
register allocation     Seongbae Park           <seongbae.park@gmail.com>
riscv port              Juzhe Zhong             <juzhe.zhong@rivai.ai>
RTL optimizers          Steven Bosscher         <steven@gcc.gnu.org>
selective scheduling    Andrey Belevantsev      <abel@ispras.ru>
selective scheduling    Alexander Monakov       <amonakov@ispras.ru>
vectorizer (+ tree-if-conv) Robin Dapp          <rdapp.gcc@gmail.com>
wide-int                Kenneth Zadeck          <zadeck@naturalbridge.com>
wide-int                Mike Stump              <mikestump@comcast.net>
wide-int                Richard Sandiford       <rdsandiford@googlemail.com>

Note that while reviewers can approve changes to parts of the compiler
that they maintain, they still need approval for their own patches
from other maintainers or reviewers.

                        Write After Approval    (last name alphabetical order)

Name                            BZ account      Email

Soumya AR                       soumyaa         <soumyaa@nvidia.com>
Spencer Abson                   sabson          <spencer.abson@student.manchester.ac.uk>
Mark G. Adams                   mgadams         <mark.g.adams@sympatico.ca>
Ajit Kumar Agarwal              aagarwa         <aagarwa1@linux.ibm.com>
Pedro Alves                     palves          <palves@redhat.com>
John David Anglin               danglin         <dave.anglin@bell.net>
Harald Anlauf                   anlauf          <anlauf@gmx.de>
Paul-Antoine Arras              parras          <parras@baylibre.com>
Arsen Arsenović                 arsen           <aarsenovic@baylibre.com>
Raksit Ashok                    raksit          <raksit@google.com>
Sterling Augustine              sterling        <augustine.sterling@gmail.com>
Matt Austern                    austern         <austern@google.com>
David Ayers                     ayers           <ayers@fsfe.org>
Prakhar Bahuguna                prakhar         <prakhar.bahuguna@arm.com>
Giovanni Bajo                   -               <giovannibajo@gcc.gnu.org>
Simon Baldwin                   simonb          <simonb@google.com>
Richard Ball                    ricbal02        <richard.ball@arm.com>
Scott Bambrough                 -               <scottb@netwinder.org>
Wolfgang Bangerth               -               <bangerth@dealii.org>
Claudio Bantaloukas             rdfm            <claudio.bantaloukas@arm.com>
Gergö Barany                    -               <gergo@codesourcery.com>
Daniel Barboza                  dbarboza        <daniel.barboza@oss.qualcomm.com>
Thiago Jung Bauermann           -               <thiago.bauermann@linaro.org>
Charles Baylis                  cbaylis         <charles.baylis@linaro.org>
Christopher Bazley              chrbaz01        <chris.bazley@arm.com>
Tejas Belagod                   belagod         <tejas.belagod@arm.com>
Andrey Belevantsev              abel            <abel@ispras.ru>
Matthew Beliveau                -               <mbelivea@redhat.com>
Serge Belyshev                  -               <belyshev@depni.sinp.msu.ru>
Jon Beniston                    jbeniston       <jon@beniston.com>
Andrew Bennett                  -               <andrew.bennett@imgtec.com>
Andrew Benson                   abensonca       <abensonca@gmail.com>
Peter Bergner                   bergner         <bergner@tenstorrent.com>
Daniel Berlin                   dberlin         <dberlin@dberlin.org>
Pat Bernardi                    -               <bernardi@adacore.com>
Jan Beulich                     -               <jbeulich@suse.com>
Indu Bhagat                     ibhagat         <indu.bhagat@oracle.com>
Richard Biener                  rguenth         <rguenther@suse.de>
David Billinghurst              billingd        <David.Billinghurst@riotinto.com>
Tomas Bily                      tomby           <tbily@suse.cz>
Laurynas Biveinis               lauras          <laurynas.biveinis@gmail.com>
Uros Bizjak                     uros            <ubizjak@gmail.com>
Eric Blake                      ericb           <ericb@gcc.gnu.org>
Janne Blomqvist                 jb              <jb@gcc.gnu.org>
Phil Blundell                   pb              <pb@futuretv.com>
Hans Boehm                      -               <hboehm@gcc.gnu.org>
Segher Boessenkool              segher          <segher@kernel.crashing.org>
Lynn Boger                      boger           <laboger@linux.vnet.ibm.com>
Ian Bolton                      ibolton         <ian.bolton@arm.com>
Andrea Bona                     andreabo        <andrea.bona@st.com>
Paolo Bonzini                   -               <bonzini@gnu.org>
Neil Booth                      neil            <neil@daikokuya.co.uk>
Steven Bosscher                 steven          <steven@gcc.gnu.org>
Eric Botcazou                   ebotcazou       <ebotcazou@libertysurf.fr>
Per Bothner                     bothner         <per@bothner.com>
Antoni Boucher                  -               <bouanto@zoho.com>
Sebastien Bourdeauducq          lekernel        <sebastien@milkymist.org>
Robert Bowdidge                 bowdidge        <bowdidge@apple.com>
James Bowman                    -               <james.bowman@ftdichip.com>
Joel Brobecker                  -               <brobecker@gnat.com>
Dave Brolley                    -               <brolley@redhat.com>
Julian Brown                    jules           <julian@codesourcery.com>
Christian Bruel                 chrbr           <christian.bruel@st.com>
Iain Buclaw                     ibuclaw         <ibuclaw@gdcproject.org>
Kevin Buettner                  -               <kevinb@redhat.com>
Andrew Burgess                  aburgess        <aburgess@redhat.com>
Tobias Burnus                   burnus          <tburnus@baylibre.com>
Adam Butcher                    abutcher        <adam@jessamine.co.uk>
Andrew Cagney                   cagney          <cagney@gnu.org>
Paolo Carlini                   paolo           <pcarlini@gmail.com>
Alice Carlotti                  acarlotti       <alice.carlotti@arm.com>
Daniel Carrera                  dcarrera        <dcarrera@gmail.com>
Stephane Carrez                 ciceron         <stcarrez@nerim.fr>
Gabriel Charette                gchare          <gchare@google.com>
Arnaud Charlet                  charlet         <charlet@adacore.com>
Chandra Chavva                  -               <cchavva@redhat.com>
Dhruv Chawla                    dhruvc          <dhruvc@nvidia.com>
Dehao Chen                      dehao           <dehao@google.com>
Zhongyao Chen			-		<chenzhongyao.hit@gmail.com>
Fabien Chêne                    fabien          <fabien@gcc.gnu.org>
Bin Cheng                       amker           <bin.cheng@linux.alibaba.com>
Kito Cheng                      kito            <kito.cheng@gmail.com>
Lulu Cheng                      -               <chenglulu@loongson.cn>
Denis Chertykov                 denisc          <chertykov@gmail.com>
Monk Chiang                     -               <monkchiang@gmail.com>
Clément Chigot                  -               <chigot@adacore.com>
Harshit Chopra                  harshit         <harshit@google.com>
Juergen Christ                  -               <jchrist@linux.ibm.com>
Tamar Christina                 tnfchris        <tamar.christina@arm.com>
Eric Christopher                echristo        <echristo@gmail.com>
Paul Clarke                     pc              <pc@us.ibm.com>
Nick Clifton                    nickc           <nickc@redhat.com>
Arthur Cohen                    cohenarthur     <arthur.cohen@embecosm.com>
William Cohen                   -               <wcohen@redhat.com>
Michael Collison                collison        <michael.collison@arm.com>
Alejandro Colomar               -               <alx@kernel.org>
Josh Conner                     jconner         <joshconner@google.com>
R. Kelley Cook                  kcook           <kcook@gcc.gnu.org>
Alex Coplan                     acoplan         <alex.coplan@arm.com>
Andrea Corallo                  akrl            <andrea.corallo@arm.com>
Christian Cornelssen            ccorn           <ccorn@cs.tu-berlin.de>
Ralf Corsepius                  corsepiu        <ralf.corsepius@rtems.org>
François-Xavier Coudert         fxcoudert       <fxcoudert@gcc.gnu.org>
Ludovic Courtès                 ludo            <ludo@gnu.org>
Cary Coutant                    -               <ccoutant@gmail.com>
Lawrence Crowl                  crowl           <crowl@google.com>
Lili Cui                        -               <lili.cui@intel.com>
Giuseppe D'Angelo               peppe           <giuseppe.dangelo@kdab.com>
Palmer Dabbelt                  palmer          <palmer@dabbelt.com>
Ian Dall                        iandall         <ian@beware.dropbear.id.au>
David Daney                     daney           <david.daney@caviumnetworks.com>
Robin Dapp                      rdapp           <rdapp.gcc@gmail.com>
Simon Dardis                    dardiss         <simon.dardis@gmail.com>
Sudakshina Das                  sudi            <sudi.das@arm.com>
Bud Davis                       bdavis          <jmdavis@link.com>
Jerry DeLisle                   jvdelisle       <jvdelisle@gcc.gnu.org>
DJ Delorie                      dj              <dj@delorie.com>
Chris Demetriou                 cgd             <cgd@google.com>
Sameera Deshpande               sameerad        <sameera.deshpande@linaro.org>
Wilco Dijkstra                  wilco           <wilco.dijkstra@arm.com>
Dimitar Dimitrov                dimitar         <dimitar@dinux.eu>
Benoit Dupont de Dinechin       bd3             <benoit.dupont-de-dinechin@st.com>
Lehua Ding                      -               <lehua.ding@rivai.ai>
Ulrich Drepper                  drepper         <drepper@gmail.com>
François Dumont                 fdumont         <fdumont@gcc.gnu.org>
Zdenek Dvorak                   rakdver         <ook@ucw.cz>
Michael Eager                   eager           <eager@eagercon.com>
Richard Earnshaw                rearnsha        <richard.earnshaw@arm.com>
Jason Eckhardt                  -               <jle@rice.edu>
Erik Edelmann                   eedelman        <erik.edelmann@iki.fi>
David Edelsohn                  dje             <dje.gcc@gmail.com>
Bernd Edlinger                  edlinger        <bernd.edlinger@hotmail.de>
Phil Edwards                    pme             <pme@gcc.gnu.org>
Mark Eggleston                  markeggleston   <mark.eggleston@codethink.co.uk>
Steve Ellcey                    sje             <sellcey@caviumnetworks.com>
Ben Elliston                    bje             <config-patches@gnu.org>
Mohan Embar                     membar          <gnustuff@thisiscool.com>
Oleg Endo                       olegendo        <olegendo@gcc.gnu.org>
Revital Eres                    revitale        <eres@il.ibm.com>
Marc Espie                      -               <espie@cvs.openbsd.org>
Ansgar Esztermann               -               <ansgar@thphy.uni-duesseldorf.de>
Doug Evans                      devans          <dje@google.com>
Chris Fairles                   cfairles        <cfairles@gcc.gnu.org>
Alessandro Fanfarillo           afanfa          <fanfarillo.gcc@gmail.com>
Changpeng Fang                  cfang           <changpeng.fang@amd.com>
David Faust                     dfaust          <david.faust@oracle.com>
Sam Feifer                      -               <sfeifer@redhat.com>
Eric Feng                       efric           <ef2648@columbia.edu>
Li Feng                         lifeng          <nemokingdom@gmail.com>
Max Filippov                    jcmvbkbc        <jcmvbkbc@gmail.com>
Thomas Fitzsimmons              fitzsim         <fitzsim@redhat.com>
Alexander Fomin                 afomin          <afomin.mailbox@gmail.com>
Brian Ford                      -               <ford@vss.fsi.com>
Matthew Fortune                 mpf             <mfortune@gmail.com>
Daniel Franke                   dfranke         <franke.daniel@gmail.com>
John Freeman                    -               <jfreeman08@gmail.com>
Nathan Froyd                    froydnj         <froydnj@gcc.gnu.org>
Chao-ying Fu                    -               <fu@mips.com>
Gary Funck                      gfunck          <gary@intrepid.com>
Pompapathi V Gadad              pompa           <Pompapathi.V.Gadad@nsc.com>
Eric Gallager                   egallager       <egall@gwmail.gwu.edu>
Gopalasubramanian Ganesh        -               <Ganesh.Gopalasubramanian@amd.com>
Fei Gao                         -               <gaofei@eswincomputing.com>
Kaveh Ghazi                     ghazi           <ghazi@gcc.gnu.org>
Doug Gilmore                    dgilmore        <Doug.Gilmore@imgtec.com>
Matthew Gingell                 -               <gingell@gnat.com>
Tristan Gingold                 gingold         <tgingold@free.fr>
Jan-Benedict Glaw               jbglaw          <jbglaw@lug-owl.de>
Marc Glisse                     glisse          <marc.glisse@inria.fr>
Prachi Godbole                  pgodbole        <pgodbole@nvidia.com>
Torbjorn Granlund               -               <tege@swox.com>
Anthony Green                   green           <green@moxielogic.com>
James Greenhalgh                jgreenhalgh     <james.greenhalgh@arm.com>
Doug Gregor                     dgregor         <doug.gregor@gmail.com>
Matthew Gretton-Dann            mgretton        <matthew.gretton-dann@arm.com>
Yury Gribov                     ygribov         <tetra2005@gmail.com>
Jon Grimm                       jgrimm          <jgrimm2@us.ibm.com>
Tobias Grosser                  grosser         <grosser@fim.uni-passau.de>
Laurent Guerby                  guerby          <laurent@guerby.net>
Haochen Gui                     guihaoc         <guihaoc@gcc.gnu.org>
Jiufu Guo                       guojiufu        <guojiufu@linux.ibm.com>
Xuepeng Guo                     xguo            <terry.xpguo@gmail.com>
Wei Guozhi                      carrot          <carrot@google.com>
Vineet Gupta                    vineetg         <vineet.gupta@linux.dev>
Naveen H.S                      naveenh         <naveen.siddegowda@oss.qualcomm.com>
Mostafa Hagog                   hagog           <hagog@gcc.gnu.org>
Olivier Hainque                 hainque         <hainque@adacore.com>
Jivan Hakobyan                  -               <jivanhakobyan9@gmail.com>
Andrew Haley                    aph             <aph@redhat.com>
Demin Han                       deminhan        <demin.han@starfivetech.com>
Mark Harmstone                  maharmstone     <mark@harmstone.com>
Frederik Harwath                frederik        <frederik@harwath.name>
Stuart Hastings                 stuart          <stuart@apple.com>
Michael Haubenwallner           haubi           <michael.haubenwallner@ssi-schaefer.com>
Pat Haugen                      pthaugen        <pthaugen@us.ibm.com>
Michael Hayes                   m.hayes         <m.hayes@elec.canterbury.ac.nz>
Alan Hayward                    alahay01        <alan.hayward@arm.com>
Li Jia He                       helijia         <helijia@gcc.gnu.org>
Mark Heffernan                  meheff          <meheff@google.com>
George Helffrich                george          <george@gcc.gnu.org>
Daniel Hellstrom                danielh         <daniel@gaisler.com>
Fergus Henderson                -               <fjh@cs.mu.oz.au>
Richard Henderson               rth             <rth@gcc.gnu.org>
Stuart Henderson                shenders        <shenders@gcc.gnu.org>
Aldy Hernandez                  aldyh           <aldy@quesejoda.com>
Philip Herron                   redbrain        <herron.philip@googlemail.com>
Marius Hillenbrand              -               <mhillen@linux.ibm.com>
Matthew Hiller                  -               <hiller@redhat.com>
Kazu Hirata                     kazu            <kazu@codesourcery.com>
Manfred Hollstein               -               <mh@suse.com>
Stafford Horne                  shorne          <shorne@gmail.com>
Cong Hou                        congh           <congh@google.com>
Levy Hsu                        -               <admin@levyhsu.com>
Lin Hu                          -               <lin1.hu@intel.com>
Sebastian Huber                 sh              <sebastian.huber@embedded-brains.de>
Jan Hubicka                     hubicka         <hubicka@ucw.cz>
Falk Hueffner                   falk            <falk@debian.org>
Andrew John Hughes              gandalf         <gnu_andrew@member.fsf.org>
Dominique d'Humieres            dominiq         <dhumieres.dominique@free.fr>
Andy Hutchinson                 hutchinsonandy  <hutchinsonandy@aim.com>
Joel Hutton                     joelh           <joel.hutton@arm.com>
Lewis Hyatt                     lhyatt          <lhyatt@gmail.com>
Paul Iannetta                   -               <piannetta@kalrayinc.com>
Roland Illig                    -               <roland.illig@gmx.de>
Meador Inge                     meadori         <meadori@codesourcery.com>
Bernardo Innocenti              -               <bernie@develer.com>
Mihail Ionescu                  -               <mihail.ionescu@arm.com>
Vladislav Ivanishin             -               <vlad@ispras.ru>
Alexander Ivchenko              aivchenk        <aivchenk@gmail.com>
Balaji V. Iyer                  bviyer          <bviyer@gmail.com>
Pekka Jääskeläinen              visit0r         <pekka.jaaskelainen@parmance.com>
Daniel Jacobowitz               drow            <drow@false.org>
Andreas Jaeger                  aj              <aj@suse.de>
Harsha Jagasia                  hjagasia        <harsha.jagasia@amd.com>
Fariborz Jahanian               -               <fjahanian@apple.com>
Martin Jambor                   jamborm         <mjambor@suse.cz>
Sam James                       sjames          <sam@gentoo.org>
Surya Kumari Jangala            jskumari        <jskumari@linux.ibm.com>
Avinash Jayakar                 avinashd        <avinashd@linux.ibm.com>
Jakub Jelinek                   jakub           <jakub@redhat.com>
Andrew Jenner                   andrewjenner    <andrew@codesourcery.com>
Saurabh Jha                     saurabhjha      <saurabh.jha@arm.com>
Haochen Jiang                   -               <haochen.jiang@intel.com>
Qian Jianhua                    -               <qianjh@fujitsu.com>
Michal Jires                    mjires          <mjires@suse.cz>
Janis Johnson                   janis           <janis.marie.johnson@gmail.com>
Teresa Johnson                  tejohnson       <tejohnson@google.com>
Kean Johnston                   -               <jkj@sco.com>
Phillip Jordan                  pmj             <phillip.m.jordan@gmail.com>
Tim Josling                     timjosling      <tej@melbpc.org.au>
Tomasz Kamiński                 tkaminsk        <tkaminsk@redhat.com>
Victor Kaplansky                victork         <victork@il.ibm.com>
Evgeny Karpov                   -               <evgeny.karpov@microsoft.com>
Filip Kastl                     pheeck          <fkastl@suse.cz>
Geoffrey Keating                geoffk          <geoffk@geoffk.org>
Brendan Kehoe                   -               <brendan@zen.org>
Richard Kenner                  kenner          <kenner@nyu.edu>
Yury Khrustalev                 ykhrustalev     <yury.khrustalev@arm.com>
Andi Kleen                      ak              <andi@firstfloor.org>
Matthias Klose                  doko            <doko@debian.org>
Jeff Knaggs                     -               <jknaggs@redhat.com>
Michael Koch                    -               <konqueror@gmx.de>
Nicolas Koenig                  koenigni        <koenigni@student.ethz.ch>
Kaz Kojima                      kkojima         <kkojima@gcc.gnu.org>
Boris Kolpackov                 boris           <boris@codesynthesis.com>
Lingling Kong                   -               <lingling.kong@intel.com>
Thomas König                    tkoenig         <tkoenig@gcc.gnu.org>
Paul Koning                     pkoning         <ni1d@arrl.net>
Bruce Korb                      korbb           <bkorb@gnu.org>
Dave Korn                       davek           <dave.korn.cygwin@gmail.com>
Julia Koval                     jkoval          <julia.koval@intel.com>
Matt Kraai                      kraai           <kraai@ftbfs.org>
Daniel Kraft                    domob           <d@domob.eu>
Jan Kratochvil                  jkratoch        <jan.kratochvil@redhat.com>
Andreas Krebbel                 krebbel         <krebbel@linux.ibm.com>
Matthias Kretz                  mkretz          <m.kretz@gsi.de>
Louis Krupp                     lkrupp          <louis.krupp@zoho.com>
Prathamesh Kulkarni             prathamesh3492  <prathameshk@nvidia.com>
Venkataramanan Kumar            vekumar         <venkataramanan.kumar@amd.com>
Maxim Kuvyrkov                  mkuvyrkov       <maxim.kuvyrkov@linaro.org>
Doug Kwan                       dougkwan        <dougkwan@google.com>
Aaron W. LaFramboise            -               <aaronavay62@aaronwl.com>
Scott Robert Ladd               -               <scott.ladd@coyotegulch.com>
Razya Ladelsky                  razya           <razya@gcc.gnu.org>
Thierry Lafage                  tlafage         <thierry.lafage@inria.fr>
Rask Ingemann Lambertsen        rask            <ccc94453@vip.cybercity.dk>
Jerome Lambourg                 -               <lambourg@adacore.com>
Tim Lange                       tlange          <mail@tim-lange.me>
Asher Langton                   langton         <langton2@llnl.gov>
Chris Lattner                   sabre           <sabre@nondot.org>
Terry Laurenzo                  tlaurenzo       <tlaurenzo@gmail.com>
Jeff Law                        law             <jeffreyalaw@gmail.com>
Alan Lawrence                   -               <alan.lawrence@arm.com>
Jozef Lawrynowicz               jozefl          <jozef.l@mittosystems.com>
Georg-Johann Lay                gjl             <avr@gjlay.de>
Vlad Lazar                      vladlazar       <vlad.lazar@arm.com>
Marc Lehmann                    -               <pcg@goof.com>
Bohan Lei                       garthlei        <garthlei@linux.alibaba.com>
James Lemke                     jwlemke         <jim@lemke.org>
Ilya Leoshkevich                iii             <iii@linux.ibm.com>
Kriang Lerdsuwanakij            lerdsuwa        <lerdsuwa@users.sourceforge.net>
Pan Li                          -               <pan2.li@intel.com>
Pengfei Li                      pfustc          <pengfei.li2@arm.com>
Renlin Li                       renlin          <renlin.li@arm.com>
Xinliang David Li               davidxl         <davidxl@google.com>
Kewen Lin                       linkw           <linkw@gcc.gnu.org>
Chen Liqin                      liqin           <liqin.gcc@gmail.com>
Martin Liska                    marxin          <mliska@suse.cz>
Hao Liu                         -               <hliu@os.amperecomputing.com>
Hongtao Liu                     liuhongt        <hongtao.liu@intel.com>
Jiangning Liu                   liujiangning    <jiangning.liu@arm.com>
Sa Liu                          saliu           <saliu@de.ibm.com>
Ralph Loader                    ralph           <rcl@ihug.co.nz>
Sheldon Lobo                    smlobo          <sheldon.lobo@oracle.com>
Gabor Loki                      loki            <loki@inf.u-szeged.hu>
Matthieu Longo                  mlongo          <matthieu.longo@arm.com>
Sandra Loosemore                sandra          <sloosemore@baylibre.com>
Manuel López-Ibáñez             manu            <manu@gcc.gnu.org>
Carl Love                       carll           <cel@linux.ibm.com>
Martin v. Löwis                 loewis          <loewis@informatik.hu-berlin.de>
Edwin Lu                        -               <ewlu@rivosinc.com>
H.J. Lu                         hjl             <hjl.tools@gmail.com>
Xiong Hu Luo                    -               <luoxhu@gcc.gnu.org>
Bin Bin Lv                      shlb            <shlb@linux.ibm.com>
Christophe Lyon                 clyon           <christophe.lyon@arm.com>
Jin Ma                          majin           <jinma@linux.alibaba.com>
Jun Ma                          junma           <junma@linux.alibaba.com>
Yuao Ma                         -               <yuao@gcc.gnu.org>
Andrew MacLeod                  -               <amacleod@redhat.com>
Luis Machado                    luisgpm         <luis.machado.foss@gmail.com>
Ziga Mahkovec                   ziga            <ziga.mahkovec@klika.si>
Vladimir Makarov                vmakarov        <vmakarov@redhat.com>
David Malcolm                   dmalcolm        <dmalcolm@redhat.com>
Matthew Malcomson               matmal01        <mmalcomson@nvidia.com>
Mikhail Maltsev                 miyuki          <maltsevm@gmail.com>
Jose E. Marchesi                jemarch         <jose.marchesi@oracle.com>
Stamatis Markianos-Wright       stammark        <stam.markianos-wright@arm.com>
Patrick Marlier                 pmarlier        <patrick.marlier@gmail.com>
Simon Martin                    simartin        <simartin@users.sourceforge.net>
Alejandro Martinez              alejandro       <alejandro.martinezvicente@arm.com>
Ranjit Mathew                   rmathew         <rmathew@hotmail.com>
Paulo Matos                     pmatos          <pmatos@linki.tools>
Ken Matsui                      kmatsui         <kmatsui@gcc.gnu.org>
Michael Matz                    matz            <matz@suse.de>
Greg McGary                     -               <gkm@gnu.org>
Roland McGrath                  roland          <roland@hack.frob.com>
Bryce McKinlay                  bryce           <mckinlay@redhat.com>
Karl Meakin                     -               <karl.meakin@arm.com>
Adam Megacz                     -               <adam@xwt.org>
Bingfeng Mei                    meibf           <bmei@broadcom.com>
Michael Meissner                meissner        <gnu@the-meissners.org>
Josef Melcr                     jmelcr          <josef.melcr@suse.com>
Jason Merrill                   jason           <jason@redhat.com>
Jim Meyering                    -               <jim@meyering.net>
Martin Michlmayr                tbm             <tbm@cyrius.com>
David S. Miller                 davem           <davem@redhat.com>
Lee Millward                    lmillward       <lee.millward@gmail.com>
Immad Mir                       mir             <mir@sourceware.org>
Cupertino Miranda               -               <cupertino.miranda@oracle.com>
Dragan Mladjenovic              draganm         <Dragan.Mladjenovic@syrmia.com>
Alan Modra                      amodra          <amodra@gmail.com>
Toon Moene                      toon            <toon@moene.org>
Alexander Monakov               amonakov        <amonakov@ispras.ru>
Pietro Monteiro                 pietro          <pietro@sociotechnical.xyz>
Catherine Moore                 clm             <clm@codesourcery.com>
Mikael Morin                    mikael          <mikael@gcc.gnu.org>
James A. Morrison               phython         <phython@gcc.gnu.org>
Brooks Moses                    brooks          <bmoses@google.com>
Dirk Mueller                    mueller         <dmueller@suse.de>
Phil Muldoon                    pmuldoon        <pmuldoon@redhat.com>
Gaius Mulley                    gaius           <gaiusmod2@gmail.com>
Christoph Müllner               cmuellner       <christoph.muellner@vrull.eu>
Steven Munroe                   munroesj        <munroesj52@gmail.com>
Philippe De Muyter              -               <phdm@macqel.be>
Joseph Myers                    jsm28           <josmyers@redhat.com>
Nathan Myers                    ncm             <ncm@cantrip.org>
Szabolcs Nagy                   nsz             <nsz@gcc.gnu.org>
Victor Do Nascimento            victorldn       <victor.donascimento@arm.com>
Quentin Neill                   qneill          <quentin.neill.gnu@gmail.com>
Adam Nemet                      nemet           <adambnemet@gmail.com>
Nathanael Nerode                neroden         <neroden@gcc.gnu.org>
Thomas Neumann                  tneumann        <tneumann@users.sourceforge.net>
Dan Nicolaescu                  -               <dann@ics.uci.edu>
Kelvin Nilsen                   kelvin          <kelvin.nilsen@gmail.com>
Hans-Peter Nilsson              hp              <hp@axis.com>
James Norris
Diego Novillo                   dnovillo        <dnovillo@google.com>
Dorit Nuzman                    dorit           <dorit@il.ibm.com>
David O'Brien                   -               <obrien@FreeBSD.org>
Carlos O'Donell                 carlos          <carlos@redhat.com>
Peter O'Gorman                  pogma           <pogma@thewrittenword.com>
Patrick O'Neill                 -               <patrick@rivosinc.com>
Braden Obrzut                   blzut3          <admin@maniacsvault.net>
Tsukasa Oi                      -               <research_trasio@irq.a4lg.com>
Alexandre Oliva                 aoliva          <aoliva@gcc.gnu.org>
Andrea Ornstein                 andreao         <andrea.ornstein@st.com>
Rainer Orth                     ro              <ro@CeBiTec.Uni-Bielefeld.DE>
Maxim Ostapenko                 chefmax         <m.ostapenko@samsung.com>
Jeevitha Palanisamy             jeevitha        <jeevitha@linux.ibm.com>
Patrick Palka                   ppalka          <ppalka@gcc.gnu.org>
Seongbae Park                   spark           <seongbae.park@gmail.com>
Kishan Parmar                   kishan          <kishan@linux.ibm.com>
Srinath Parvathaneni            sripar01        <srinath.parvathaneni@arm.com>
Devang Patel                    dpatel          <dpatel@apple.com>
Andris Pavenis                  andris          <andris.pavenis@iki.fi>
Fernando Pereira                pronesto        <pronesto@gmail.com>
Nicola Pero                     nicola          <nicola.pero@meta-innovation.com>
Sebastian Perta                 -               <sebastian.perta@renesas.com>
Sebastian Peryt                 speryt          <sebastian.peryt@intel.com>
Mikael Pettersson               mikpe           <mikpelinux@gmail.com>
Johannes Pfau                   jpfau           <johannespfau@gmail.com>
Gerald Pfeifer                  gerald          <gerald@pfeifer.com>
Kaushik Phatak                  kaushikp        <kaushik.phatak@kpitcummins.com>
Andrew Pinski                   pinskia         <andrew.pinski@qualcomm.com>
Nicolas Pitre                   nico            <nico@cam.org>
Michael Ploujnikov              plouj           <michael.ploujnikov@oracle.com>
Paul Pluzhnikov                 ppluzhnikov     <ppluzhnikov@google.com>
Marek Polacek                   mpolacek        <polacek@redhat.com>
Antoniu Pop                     apop            <antoniu.pop@gmail.com>
Sebastian Pop                   spop            <sebpop@gmail.com>
Marc Poulhiès                   dkm             <poulhies@adacore.com>
Siddhesh Poyarekar              siddhesh        <siddhesh@gotplt.org>
Vidya Praveen                   vp              <vidyapraveen@arm.com>
Thomas Preud'homme              -               <thomas.preudhomme@celest.fr>
Benjamin Priour                 vultkayn        <priour.be@gmail.com>
Vladimir Prus                   vprus           <vladimir@codesourcery.com>
Hafiz Abid Qadeer               abidh           <abidh@codesourcery.com>
Yao Qi                          qiyao           <yao@codesourcery.com>
Xianmiao Qu                     -               <cooper.qu@linux.alibaba.com>
Jerry Quinn                     jlquinn         <jlquinn@optonline.net>
Ramana Radhakrishnan            ramana          <ramanara@nvidia.com>
Navid Rahimi                    navidr          <navidr@gcc.gnu.org>
Rishi Raj                       -               <rishiraj45035@gmail.com>
Easwaran Raman                  eraman          <eraman@google.com>
Joe Ramsay                      joeramsay       <joe.ramsay@arm.com>
Rolf Rasmussen                  -               <rolfwr@gcc.gnu.org>
Fritz Reese                     foreese         <fritzoreese@gmail.com>
Volker Reichelt                 reichelt        <v.reichelt@netcologne.de>
Joern Rennecke                  amylaar         <gnu@amylaar.uk>
Bernhard Reutner-Fischer        aldot           <rep.dot.nop@gmail.com>
Alfie Richards                  -               <alfie.richards@arm.com>
Torvald Riegel                  torvald         <triegel@redhat.com>
Tom Rix                         -               <trix@redhat.com>
Pierre-Marie de Rodat           pmderodat       <derodat@adacore.com>
Thomas Rodgers                  rodgertq        <trodgers@redhat.com>
Craig Rodrigues                 rodrigc         <rodrigc@gcc.gnu.org>
Erven Rohou                     erven           <erven.rohou@inria.fr>
Ira Rosen                       irar            <irar@il.ibm.com>
Yvan Roux                       yroux           <yvan.roux@linaro.org>
Eugene Rozenfeld                -               <erozen@microsoft.com>
Maciej W. Rozycki               -               <macro@orcam.me.uk>
Douglas Rupp                    -               <douglas.b.rupp@gmail.com>
Silvius Rus                     rus             <rus@google.com>
Matthew Sachs                   matthewg        <msachs@apple.com>
Ankur Saini                     arsenic         <arsenic@sourceware.org>
Hariharan Sandanagobalane       hariharans      <hariharan.gcc@gmail.com>
Richard Sandiford               rsandifo        <rdsandiford@googlemail.com>
Iain Sandoe                     iains           <iain@sandoe.co.uk>
Duncan Sands                    baldrick        <baldrick@gcc.gnu.org>
Sujoy Saraswati                 ssaraswati      <sujoy.saraswati@hpe.com>
Trevor Saunders                 tbsaunde        <tbsaunde+gcc@tbsaunde.org>
Aaron Sawdey                    acsawdey        <acsawdey@linux.ibm.com>
Roger Sayle                     sayle           <roger@nextmovesoftware.com>
Tobias Schlüter                 tobi            <tobias.schlueter@physik.uni-muenchen.de>
Bernd Schmidt                   bernds          <bernds_cb1@t-online.de>
Will Schmidt                    willschm        <will_schmidt@vnet.ibm.com>
Jennifer Schmitz                jschmitz        <jschmitz@mailbox.org>
Stefan Schulze Frielinghaus     stefansf        <stefansf@linux.ibm.com>
Andreas Schwab                  schwab          <schwab@linux-m68k.org>
Tilo Schwarz                    tiloschwarz     <tilo@tilo-schwarz.de>
Thomas Schwinge                 tschwinge       <thomas@schwinge.name>
Martin Sebor                    msebor          <msebor@gcc.gnu.org>
Dodji Seketeli                  dodji           <dodji@redhat.com>
Svein Seldal                    -               <svein@dev.seldal.com>
Senthil Kumar Selvaraj          saaadhu         <saaadhu@gcc.gnu.org>
Kostya Serebryany               kcc             <kcc@google.com>
Thiemo Seufer                   -               <ths@networkno.de>
Bill Seurer                     seurer          <seurer@linux.vnet.ibm.com>
Nathaniel Shead                 nshead          <nathanieloshead@gmail.com>
Tim Shen                        timshen         <timshen@google.com>
Joel Sherrill                   joel            <joel@oarcorp.com>
David Sherwood                  davids          <david.sherwood@arm.com>
Nathan Sidwell                  nathan          <nathan@acm.org>
Sharad Singhai                  singhai         <singhai@google.com>
Johannes Singler                singler         <singler@kit.edu>
Franz Sirl                      sirl            <franz.sirl-kernel@lauterbach.com>
Jan Sjodin                      jsjodin         <jan.sjodin@amd.com>
Trevor Smigiel                  tsmigiel        <trevor_smigiel@playstation.sony.com>
Edward Smith-Rowland            emsr            <esmithrowland@gmail.com>
Anatoly Sokolov                 aesok           <aesok@dol.ru>
Michael Sokolov                 -               <msokolov@ivan.Harhan.ORG>
Jayant Sonar                    jayants         <rsonar.jayant@gmail.com>
Fangrui Song                    -               <maskray@gcc.gnu.org>
Richard Stallman                -               <rms@gnu.org>
Basile Starynkevitch            bstarynk        <basile@starynkevitch.net>
Jakub Staszak                   kuba            <kuba@et.pl>
Graham Stott                    grahams         <graham.stott@btinternet.com>
Andrew Stubbs                   ams             <ams@baylibre.com>
Mike Stump                      mrs             <mikestump@comcast.net>
Jeff Sturm                      jsturm          <jsturm@gcc.gnu.org>
YunQiang Su                     syq             <syq@gcc.gnu.org>
Robert Suchanek                 rts             <rsuchy84@gmail.com>
Supers1ngular                   supers1ngular   <supers1ngular@baylibre.com>
Andrew Sutton                   asutton         <andrew.n.sutton@gmail.com>
Gabriele Svelto                 gsvelto         <gabriele.svelto@st.com>
Torbjörn Svensson               azoff           <torbjorn.svensson@foss.st.com>
Toma Tabacu                     tomtab          <toma.tabacu@gmail.com>
Omar Tahir                      -               <omar.tahir@arm.com>
Sriraman Tallam                 tmsriram        <tmsriram@google.com>
Chung-Lin Tang                  cltang          <cltang@baylibre.com>
Samuel Tardieu                  sam             <sam@rfc1149.net>
Ian Lance Taylor                ian             <ian@airs.com>
Sam Tebbs                       samtebbs        <samuel.tebbs@gmail.com>
Vijay Telidevulapalli           vtelidev        <vijay@linux.ibm.com>
Dinar Temirbulatov              dinar           <dtemirbulatov@gmail.com>
Matt Thomas                     matt            <matt@3am-software.com>
Paul Thomas                     pault           <pault@gcc.gnu.org>
Philipp Thomas                  -               <pth@suse.de>
Jason Thorpe                    thorpej         <thorpej@netbsd.org>
Kresten Krab Thorup             -               <krab@gcc.gnu.org>
Caroline Tice                   ctice           <cmtice@google.com>
Kai Tietz                       ktietz          <ktietz70@googlemail.com>
Kyrylo Tkachov                  ktkachov        <ktkachov@nvidia.com>
Andreas Tobler                  andreast        <andreast@gcc.gnu.org>
Ilya Tocar                      tocarip         <tocarip@gmail.com>
Petter Tomner                   -               <tomner@bahnhof.se>
Philipp Tomsich                 ptomsich        <philipp.tomsich@vrull.eu>
Daniel Towner                   -               <dant@picochip.com>
Konrad Trifunovic               trifunovic      <konrad.trifunovic@inria.fr>
Markus Trippelsdorf             trippels        <markus@trippelsdorf.de>
Sergei Trofimovich              slyfox          <slyfox@gcc.gnu.org>
Tom Tromey                      tromey          <tromey@redhat.com>
Igor Tsimbalist                 itsimbal        <igor.v.tsimbalist@intel.com>
Martin Uecker                   uecker          <uecker@gcc.gnu.org>
David Ung                       davidu          <davidu@mips.com>
Neil Vachharajani               nvachhar        <nvachhar@gmail.com>
Kris Van Hees                   -               <kris.van.hees@oracle.com>
Joost VandeVondele              vondele         <joost.vandevondele@mat.ethz.ch>
Andre Vehreschild               vehre           <vehre@gmx.de>
Alex Velenko                    avelenko        <alex.velenko@arm.com>
Ilya Verbin                     iverbin         <iverbin@gmail.com>
Andre Vieira                    avieira         <andre.simoesdiasvieira@arm.com>
Rasmus Villemoes                -               <rv@rasmusvillemoes.dk>
Kugan Vivekanandarajah          kugan           <kvivekananda@nvidia.com>
Artemiy Volkov                  artemiyv        <artemiy.volkov@arm.com>
Marcel Vollweiler               -               <marcel@codesourcery.com>
Ville Voutilainen               ville           <ville.voutilainen@gmail.com>
Tom de Vries                    vries           <tdevries@suse.de>
Nenad Vukicevic                 nenadv          <nenad@intrepid.com>
Dmitry Vyukov                   dvyukov         <dvyukov@google.com>
Waffl3x                         waffl3x         <waffl3x@baylibre.com>
Jonathan Wakely                 redi            <jwakely@redhat.com>
Krister Walfridsson             kristerw        <krister.walfridsson@gmail.com>
Feng Wang                       -               <wangfeng@eswincomputing.com>
Feng Wang                       fengwang        <fengwang@nudt.edu.cn>
Hongyu Wang                     hongyuw         <hongyu.wang@intel.com>
Jiong Wang                      jiwang          <jiong.wang@arm.com>
Stephen M. Webb                 smw             <stephen.webb@bregmasoft.com>
John Wehle                      -               <john@feith.com>
Ulrich Weigand                  uweigand        <uweigand@de.ibm.com>
Janus Weil                      janus           <janus@gcc.gnu.org>
Florian Weimer                  fw              <fweimer@redhat.com>
Zack Weinberg                   -               <zackw@panix.com>
Alexander Westbrooks            alexanderw      <alexanderw@gcc.gnu.org>
Mark Wielaard                   mark            <mark@gcc.gnu.org>
Edmar Wienskoski                edmarwjr        <edmar@freescale.com>
Ollie Wild                      -               <aaw@google.com>
Ralf Wildenhues                 rwild           <Ralf.Wildenhues@gmx.de>
Kevin Williams                  kwilliam        <kevin.williams@inria.fr>
Jim Wilson                      wilson          <jim.wilson.gcc@gmail.com>
Przemyslaw Wirkus               wirkus          <przemyslaw.wirkus@arm.com>
Carlo Wood                      carlo           <carlo@alinoe.com>
Jackson Woodruff                jcw             <jackson.woodruff@arm.com>
Jonathan Wright                 -               <jonathan.wright@arm.com>
Chung-Ju Wu                     jasonwucj       <jasonwucj@gmail.com>
Le-Chun Wu                      lcwu            <lcwu@google.com>
Ruoyao Xi                       xry111          <xry111@xry111.site>
Mingjie Xing                    xmj             <mingjie.xing@gmail.com>
Chenghua Xu                     paulhua         <paul.hua.gm@gmail.com>
Li Xu                           -               <xuli1@eswincomputing.com>
Feng Xue                        fxue            <fxue@os.amperecomputing.com>
Canqun Yang                     canqun          <canqun@nudt.edu.cn>
Fei Yang                        fyang           <felix.yang@huawei.com>
Jeffrey Yasskin                 jyasskin        <jyasskin@google.com>
Joey Ye                         jye2            <joey.ye@arm.com>
Kwok Cheung Yeung               kcy             <kcyeung@baylibre.com>
Jonathan Yong                   jyong           <10walls@gmail.com>
Greta Yorsh                     gretay          <greta.yorsh@arm.com>
Kirill Yukhin                   kyukhin         <kirill.yukhin@gmail.com>
David Yuste                     dyuste          <david.yuste@gmail.com>
Kenneth Zadeck                  zadeck          <zadeck@naturalbridge.com>
Adhemerval Zanella              -               <azanella@linux.vnet.ibm.com>
Xiao Zeng                       -               <zengxiao@eswincomputing.com>
Dennis Zhang                    -               <dennis.zhang@arm.com>
Jie Zhang                       jiez            <jzhang918@gmail.com>
Yufeng Zhang                    yufeng          <yufeng.zhang@arm.com>
Qing Zhao                       qinzhao         <qing.zhao69@gmail.com>
Shujing Zhao                    pzhao           <pearly.zhao@oracle.com>
Pengxuan Zheng                  pzheng          <pengxuan.zheng@oss.qualcomm.com>
Juzhe Zhong                     -               <juzhe.zhong@rivai.ai>
Roman Zhuykov                   zhroma          <zhroma@ispras.ru>
Jon Ziegler                     jonz            <jonz@apple.com>
Raphael Zinsly                  -               <rzinsly@qti.qualcomm.com>
Roman Zippel                    zippel          <zippel@linux-m68k.org>
Claudiu Zissulescu              claziss         <claziss@gmail.com>
Josef Zlomek                    zlomek          <josef.zlomek@email.cz>

                        Bug database only accounts

James Dennett                                   <jdennett@acm.org>
Christian Ehrhardt                              <ehrhardt@mathematik.uni-ulm.de>
Dara Hazeghi                                    <dhazeghi@yahoo.com>

                        Contributing under the DCO

By adding your name and email to this section, you certify that all your
subsequent contributions to GCC are made under the terms of the Developer's
Certificate of Origin Version 1.1.  See https://gcc.gnu.org/dco.html for more
information.


Soumya AR                                       <soumyaa@nvidia.com>
Daniel Barboza                                  <dbarboza@qti.qualcomm.com>
Daniel Barboza                                  <dbarboza@ventanamicro.com>
Peter Bergner                                   <bergner@tenstorrent.com>
Dhruv Chawla                                    <dhruvc@nvidia.com>
Zhongyao Chen					<chenzhongyao.hit@gmail.com>
Zhongyao Chen					<chen.zhongyao@zte.com.cn>
Juergen Christ                                  <jchrist@linux.ibm.com>
Alejandro Colomar                               <alx@kernel.org>
Giuseppe D'Angelo                               <giuseppe.dangelo@kdab.com>
Robin Dapp                                      <rdapp.gcc@gmail.com>
Robin Dapp                                      <rdapp@qti.qualcomm.com>
Robin Dapp                                      <rdapp@ventanamicro.com>
Prachi Godbole                                  <pgodbole@nvidia.com>
Naveen Gowda                                    <naveen.siddegowda@oss.qualcomm.com>
Aldy Hernandez                                  <aldy@quesejoda.com>
Michal Jires                                    <mjires@suse.cz>
Matthias Kretz                                  <m.kretz@gsi.de>
Prathamesh Kulkarni                             <prathameshk@nvidia.com>
Tim Lange                                       <mail@tim-lange.me>
Jeff Law                                        <jefflaw@qti.qualcomm.com>
Jeff Law                                        <jeffrey.law@oss.qualcomm.com>
Jeff Law                                        <jeffreyalaw@gmail.com>
Jeff Law                                        <jlaw@tachyum.com>
Jeff Law                                        <jlaw@ventanamicro.com>
Bohan Lei                                       <garthlei@linux.alibaba.com>
Martin Liška                                    <martin.liska@hey.com>
H.J. Lu                                         <hjl.tools@gmail.com>
Yuao Ma                                         <yuao@gcc.gnu.org>
Matthew Malcomson                               <mmalcomson@nvidia.com>
Jose E. Marchesi                                <jemarch@gnu.org>
Immad Mir                                       <mir@sourceware.org>
Gaius Mulley                                    <gaiusmod2@gmail.com>
Shreya Munnangi                                 <smunnang@qti.qualcomm.com>
Shreya Munnangi                                 <smunnangi1@ventanamicro.com>
Szabolcs Nagy                                   <nsz@gcc.gnu.org>
Mikael Pettersson                               <mikpelinux@gmail.com>
Andrew Pinski                                   <andrew.pinski@oss.qualcomm.com>
Andrew Pinski                                   <quic_apinski@quicinc.com>
Siddhesh Poyarekar                              <siddhesh@gotplt.org>
Ramana Radhakrishnan                            <ramanara@nvidia.com>
Navid Rahimi                                    <navidr@gcc.gnu.org>
Rishi Raj                                       <rishiraj45035@gmail.com>
Trevor Saunders                                 <tbsaunde+gcc@tbsaunde.org>
Bill Schmidt                                    <bill.schmidt@fastmail.com>
Nathaniel Shead                                 <nathanieloshead@gmail.org>
Nathan Sidwell                                  <nathan@acm.org>
Edward Smith-Rowland                            <esmithrowland@gmail.com>
Fangrui Song                                    <maskray@gcc.gnu.org>
Kyrylo Tkachov                                  <ktkachov@nvidia.com>
Petter Tomner                                   <tomner@bahnhof.se>
Martin Uecker                                   <uecker@gcc.gnu.org>
Kugan Vivekanandarajah                          <kvivekananda@nvidia.com>
Jonathan Wakely                                 <jwakely@redhat.com>
Alexander Westbrooks                            <alexanderw@gcc.gnu.org>
Chung-Ju Wu                                     <jasonwucj@gmail.com>
Pengxuan Zheng                                  <pengxuan.zheng@oss.qualcomm.com>
Pengxuan Zheng                                  <quic_pzheng@quicinc.com>
Raphael Zinsly                                  <rzinsly@qti.qualcomm.com>
Raphael Zinsly                                  <rzinsly@ventanamicro.com>
