This file is a list of the people responsible for ensuring that patches for a
particular part of LLVM are reviewed, either by themself or by someone else.
They are also the gatekeepers for their part of LLVM, with the final word on
what goes in or not.

The list is sorted by surname and formatted to allow easy grepping and
beautification by scripts. The fields are: name (N), email (E), web-address
(W), PGP key ID and fingerprint (P), description (D), snail-mail address
(S) and (I) IRC handle. Each entry should contain at least the (N), (E) and
(D) fields.

N: Paul C. Anagnostopoulos
E: paul@windfall.com
D: TableGen

N: Matt Arsenault
E: Matthew.Arsenault@amd.com
E: arsenm2@gmail.com
I: arsenm
D: InferAddressSpaces

N: Simon Atanasyan
E: simon@atanasyan.com
D: MIPS Backend (lib/Target/Mips/*)

N: Justin Bogner
E: mail@justinbogner.com
D: InstrProfiling and related parts of ProfileData
D: SelectionDAG (lib/CodeGen/SelectionDAG/*)

N: Alex Bradbury
E: asb@lowrisc.org
D: RISC-V backend (lib/Target/RISCV/*)

N: Matthias Braun
E: matze@braunis.de
I: MatzeB
D: Instruction Scheduling

N: Chandler Carruth
E: chandlerc@gmail.com
E: chandlerc@google.com
D: Config, ADT, Support, inlining & related passes, SROA/mem2reg & related passes, CMake, library layering

N: Evan Cheng
E: evan.cheng@apple.com
D: parts of code generator not covered by someone else

N: Eric Christopher
E: echristo@gmail.com
D: Debug Information, inline assembly

N: Andrey Churbanov
E: andrey.churbanov@intel.com
D: OpenMP runtime library

N: Johannes Doerfert
E: jdoerfert@anl.gov
D: OpenMP target offloading

N: Greg Clayton
E: clayborg@gmail.com
D: LLDB

N: Louis Dionne
E: ldionne.2@gmail.com
D: libc++

N: Peter Collingbourne
E: peter@pcc.me.uk
D: libLTO (lib/LTO/* tools/lto/*), LLVM Bitcode (lib/Bitcode/* include/llvm/Bitcode/*)

N: Quentin Colombet
E: quentin.colombet@gmail.com
D: Loop Strength Reduction, Register allocators

N: Andrea Di Biagio
E: andrea.dibiagio@sony.com
E: andrea.dibiagio@gmail.com
D: MCA, llvm-mca

N: Duncan P. N. Exon Smith
E: dexonsmith@apple.com
D: Branch weights and BlockFrequencyInfo

N: Hal Finkel
E: hfinkel@anl.gov
D: The loop reroller and alias analysis

N: Nemanja Ivanovic
E: nemanja.i.ibm@gmail.com
D: PowerPC Backend

N: Dan Gohman
E: llvm@sunfishcode.online
D: WebAssembly Backend (lib/Target/WebAssembly/*)

N: Renato Golin
E: renato.golin@linaro.org
D: ARM Linux support

N: Venkatraman Govindaraju
E: venkatra@cs.wisc.edu
D: Sparc Backend (lib/Target/Sparc/*)

N: Tobias Grosser
E: tobias@grosser.es
D: Polly

N: James Grosbach
E: grosbach@apple.com
D: MC layer

N: Justin Holewinski
E: jholewinski@nvidia.com
D: NVPTX Target (lib/Target/NVPTX/*)

N: Lang Hames
E: lhames@gmail.com
D: MCJIT, RuntimeDyld and JIT event listeners, Orcish Warchief

N: Min-Yih Hsu
E: minyihh@uci.edu
E: yihshyng223@gmail.com
D: M68k Target (lib/Target/M68k/*)

N: Teresa Johnson
E: tejohnson@google.com
D: Gold plugin (tools/gold/*) and IR Linker

N: Galina Kistanova
E: gkistanova@gmail.com
D: LLVM Buildbot

N: Anton Korobeynikov
E: anton@korobeynikov.info
D: Exception handling, Windows codegen, ARM EABI

N: Benjamin Kramer
E: benny.kra@gmail.com
D: DWARF Parser

N: Michael Kuperstein
E: mkuper@google.com
D: Loop Vectorizer

N: Sergei Larin
E: slarin@codeaurora.org
D: VLIW Instruction Scheduling, Packetization

N: Chris Lattner
E: sabre@nondot.org
W: http://nondot.org/~sabre/
D: Everything not covered by someone else

N: Weining Lu
E: luweining@loongson.cn
D: LoongArch backend (lib/Target/LoongArch/*)

N: David Majnemer
E: david.majnemer@gmail.com
D: IR Constant Folder, InstCombine

N: Dylan McKay
E: me@dylanmckay.io
D: AVR Backend

N: Simon Moll
E: simon.moll@emea.nec.com
D: VE Backend

N: Tim Northover
E: t.p.northover@gmail.com
D: AArch64 backend, misc ARM backend

N: Diego Novillo
E: dnovillo@google.com
D: SampleProfile and related parts of ProfileData

N: Krzysztof Parzyszek
E: kparzysz@quicinc.com
D: Hexagon Backend

N: Nigel Perks
E: nigelp@xmos.com
D: XCore Backend

N: Jacques Pienaar
E: jpienaar@google.com
D: Lanai Backend

N: Philip Reames
E: listmail@philipreames.com
D: IndVar Simplify, Scalar Evolution

N: Paul Robinson
E: paul.robinson@sony.com
D: Sony PlayStation®4 support

N: Chad Rosier
E: mcrosier@codeaurora.org
D: Fast-Isel

N: Duncan Sands
E: baldrick@free.fr
D: DragonEgg

N: Mark Schimmel
E: marksl@synopsys.com
D: ARC backend (lib/Target/ARC/*)

N: Kostya Serebryany
E: kcc@google.com
D: AddressSanitizer, ThreadSanitizer (LLVM parts)

N: Michael Spencer
E: bigcheesegs@gmail.com
D: Windows parts of Support, Object, ar, nm, objdump, ranlib, size

N: Alexei Starovoitov
E: alexei.starovoitov@gmail.com
D: BPF backend

N: Tom Stellard
E: tstellar@redhat.com
D: Stable release management (x.y.[1-9] releases), AMDGPU Backend, libclc

N: Evgeniy Stepanov
E: eugenis@google.com
D: MemorySanitizer (LLVM part)

N: Craig Topper
E: craig.topper@gmail.com
D: X86 Backend

N: Ulrich Weigand
E: uweigand@de.ibm.com
D: SystemZ Backend

N: Hans Wennborg
E: hans@chromium.org
D: Release management (x.y.0 releases)

N: Jake Ehrlich
E: jakehehrlich@google.com
D: llvm-objcopy (tools/llvm-objcopy)

N: Martin Storsjö
E: martin@martin.st
D: MinGW

N: Zi Xuan Wu (Zeson)
E: zixuan.wu@linux.alibaba.com
D: C-SKY backend (lib/Target/CSKY/*)
