CREDITS.TXT 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567
  1. This file is a partial list of people who have contributed to the LLVM
  2. project. If you have contributed a patch or made some other contribution to
  3. LLVM, please submit a patch to this file to add yourself, and it will be
  4. done!
  5. The list is sorted by surname and formatted to allow easy grepping and
  6. beautification by scripts. The fields are: name (N), email (E), web-address
  7. (W), PGP key ID and fingerprint (P), description (D), snail-mail address
  8. (S), and (I) IRC handle.
  9. N: Vikram Adve
  10. E: vadve@cs.uiuc.edu
  11. W: http://www.cs.uiuc.edu/~vadve/
  12. D: The Sparc64 backend, provider of much wisdom, and motivator for LLVM
  13. N: Owen Anderson
  14. E: resistor@mac.com
  15. D: LCSSA pass and related LoopUnswitch work
  16. D: GVNPRE pass, DataLayout refactoring, random improvements
  17. N: Henrik Bach
  18. D: MingW Win32 API portability layer
  19. N: Aaron Ballman
  20. E: aaron@aaronballman.com
  21. D: Clang frontend, frontend attributes, Windows support, general bug fixing
  22. I: AaronBallman
  23. N: Nate Begeman
  24. E: natebegeman@mac.com
  25. D: PowerPC backend developer
  26. D: Target-independent code generator and analysis improvements
  27. N: Daniel Berlin
  28. E: dberlin@dberlin.org
  29. D: ET-Forest implementation.
  30. D: Sparse bitmap
  31. N: Geoff Berry
  32. E: gberry@codeaurora.org
  33. E: gcb@acm.org
  34. D: AArch64 backend improvements
  35. D: Added EarlyCSE MemorySSA support
  36. D: CodeGen improvements
  37. N: David Blaikie
  38. E: dblaikie@gmail.com
  39. D: General bug fixing/fit & finish, mostly in Clang
  40. N: Neil Booth
  41. E: neil@daikokuya.co.uk
  42. D: APFloat implementation.
  43. N: Alex Bradbury
  44. E: asb@igalia.com
  45. D: RISC-V backend
  46. N: Misha Brukman
  47. E: brukman+llvm@uiuc.edu
  48. W: http://misha.brukman.net
  49. D: Portions of X86 and Sparc JIT compilers, PowerPC backend
  50. D: Incremental bitcode loader
  51. N: Cameron Buschardt
  52. E: buschard@uiuc.edu
  53. D: The `mem2reg' pass - promotes values stored in memory to registers
  54. N: Brendon Cahoon
  55. E: bcahoon@codeaurora.org
  56. D: Loop unrolling with run-time trip counts.
  57. N: Chandler Carruth
  58. E: chandlerc@gmail.com
  59. E: chandlerc@google.com
  60. D: Hashing algorithms and interfaces
  61. D: Inline cost analysis
  62. D: Machine block placement pass
  63. D: SROA
  64. N: Casey Carter
  65. E: ccarter@uiuc.edu
  66. D: Fixes to the Reassociation pass, various improvement patches
  67. N: Evan Cheng
  68. E: evan.cheng@apple.com
  69. D: ARM and X86 backends
  70. D: Instruction scheduler improvements
  71. D: Register allocator improvements
  72. D: Loop optimizer improvements
  73. D: Target-independent code generator improvements
  74. N: Dan Villiom Podlaski Christiansen
  75. E: danchr@gmail.com
  76. E: danchr@cs.au.dk
  77. W: http://villiom.dk
  78. D: LLVM Makefile improvements
  79. D: Clang diagnostic & driver tweaks
  80. S: Aarhus, Denmark
  81. N: Jeff Cohen
  82. E: jeffc@jolt-lang.org
  83. W: http://jolt-lang.org
  84. D: Native Win32 API portability layer
  85. N: John T. Criswell
  86. E: criswell@uiuc.edu
  87. D: Original Autoconf support, documentation improvements, bug fixes
  88. N: Anshuman Dasgupta
  89. E: adasgupt@codeaurora.org
  90. D: Deterministic finite automaton based infrastructure for VLIW packetization
  91. N: Stefanus Du Toit
  92. E: stefanus.du.toit@intel.com
  93. D: Bug fixes and minor improvements
  94. N: Rafael Avila de Espindola
  95. E: rafael@espindo.la
  96. D: MC and LLD work
  97. N: Dave Estes
  98. E: cestes@codeaurora.org
  99. D: AArch64 machine description for Cortex-A53
  100. N: Alkis Evlogimenos
  101. E: alkis@evlogimenos.com
  102. D: Linear scan register allocator, many codegen improvements, Java frontend
  103. N: Hal Finkel
  104. E: hfinkel@anl.gov
  105. D: Basic-block autovectorization, PowerPC backend improvements
  106. N: Eric Fiselier
  107. E: eric@efcs.ca
  108. D: LIT patches and documentation
  109. N: Ryan Flynn
  110. E: pizza@parseerror.com
  111. D: Miscellaneous bug fixes
  112. N: Brian Gaeke
  113. E: gaeke@uiuc.edu
  114. W: http://www.students.uiuc.edu/~gaeke/
  115. D: Portions of X86 static and JIT compilers; initial SparcV8 backend
  116. D: Dynamic trace optimizer
  117. D: FreeBSD/X86 compatibility fixes, the llvm-nm tool
  118. N: Nicolas Geoffray
  119. E: nicolas.geoffray@lip6.fr
  120. W: http://www-src.lip6.fr/homepages/Nicolas.Geoffray/
  121. D: PPC backend fixes for Linux
  122. N: Louis Gerbarg
  123. E: lgg@apple.com
  124. D: Portions of the PowerPC backend
  125. N: Saem Ghani
  126. E: saemghani@gmail.com
  127. D: Callgraph class cleanups
  128. N: Mikhail Glushenkov
  129. E: foldr@codedgers.com
  130. D: Author of llvmc2
  131. N: Dan Gohman
  132. E: llvm@sunfishcode.online
  133. D: Miscellaneous bug fixes
  134. D: WebAssembly Backend
  135. N: Renato Golin
  136. E: rengolin@systemcall.eu
  137. E: renato.golin@linaro.org
  138. E: rengolin@gmail.com
  139. D: ARM/AArch64 back-end improvements
  140. D: Loop Vectorizer improvements
  141. D: Regression and Test Suite improvements
  142. D: Linux compatibility (GNU, musl, etc)
  143. D: Initial Linux kernel / Android support effort
  144. I: rengolin
  145. N: David Goodwin
  146. E: david@goodwinz.net
  147. D: Thumb-2 code generator
  148. N: David Greene
  149. E: greened@obbligato.org
  150. D: Miscellaneous bug fixes
  151. D: Register allocation refactoring
  152. N: Gabor Greif
  153. E: ggreif@gmail.com
  154. D: Improvements for space efficiency
  155. N: James Grosbach
  156. E: grosbach@apple.com
  157. I: grosbach
  158. D: SjLj exception handling support
  159. D: General fixes and improvements for the ARM back-end
  160. D: MCJIT
  161. D: ARM integrated assembler and assembly parser
  162. D: Led effort for the backend formerly known as ARM64
  163. N: Lang Hames
  164. E: lhames@gmail.com
  165. D: PBQP-based register allocator
  166. N: Gordon Henriksen
  167. E: gordonhenriksen@mac.com
  168. D: Pluggable GC support
  169. D: C interface
  170. D: Ocaml bindings
  171. N: Raul Fernandes Herbster
  172. E: raul@dsc.ufcg.edu.br
  173. D: JIT support for ARM
  174. N: Paolo Invernizzi
  175. E: arathorn@fastwebnet.it
  176. D: Visual C++ compatibility fixes
  177. N: Patrick Jenkins
  178. E: patjenk@wam.umd.edu
  179. D: Nightly Tester
  180. N: Tony(Yanjun) Jiang
  181. E: jtony@ca.ibm.com
  182. D: PowerPC Backend Developer
  183. D: Improvements to the PPC backend and miscellaneous bug fixes
  184. N: Dale Johannesen
  185. E: dalej@apple.com
  186. D: ARM constant islands improvements
  187. D: Tail merging improvements
  188. D: Rewrite X87 back end
  189. D: Use APFloat for floating point constants widely throughout compiler
  190. D: Implement X87 long double
  191. N: Brad Jones
  192. E: kungfoomaster@nondot.org
  193. D: Support for packed types
  194. N: Rod Kay
  195. E: rkay@auroraux.org
  196. D: Author of LLVM Ada bindings
  197. N: Erich Keane
  198. E: erich.keane@intel.com
  199. D: A variety of Clang contributions including function multiversioning, regcall/vectorcall.
  200. I: ErichKeane
  201. N: Eric Kidd
  202. W: http://randomhacks.net/
  203. D: llvm-config script
  204. N: Anton Korobeynikov
  205. E: anton at korobeynikov dot info
  206. D: Mingw32 fixes, cross-compiling support, stdcall/fastcall calling conv.
  207. D: x86/linux PIC codegen, aliases, regparm/visibility attributes
  208. D: Switch lowering refactoring
  209. N: Sumant Kowshik
  210. E: kowshik@uiuc.edu
  211. D: Author of the original C backend
  212. N: Benjamin Kramer
  213. E: benny.kra@gmail.com
  214. D: Miscellaneous bug fixes
  215. N: Sundeep Kushwaha
  216. E: sundeepk@codeaurora.org
  217. D: Implemented DFA-based target independent VLIW packetizer
  218. N: Christopher Lamb
  219. E: christopher.lamb@gmail.com
  220. D: aligned load/store support, parts of noalias and restrict support
  221. D: vreg subreg infrastructure, X86 codegen improvements based on subregs
  222. D: address spaces
  223. N: Jim Laskey
  224. E: jlaskey@apple.com
  225. D: Improvements to the PPC backend, instruction scheduling
  226. D: Debug and Dwarf implementation
  227. D: Auto upgrade mangler
  228. D: llvm-gcc4 svn wrangler
  229. N: Chris Lattner
  230. E: sabre@nondot.org
  231. W: http://nondot.org/~sabre/
  232. D: Primary architect of LLVM
  233. N: Tanya Lattner (Tanya Brethour)
  234. E: tonic@nondot.org
  235. W: http://nondot.org/~tonic/
  236. D: The initial llvm-ar tool, converted regression testsuite to dejagnu
  237. D: Modulo scheduling in the SparcV9 backend
  238. D: Release manager (1.7+)
  239. N: Sylvestre Ledru
  240. E: sylvestre@debian.org
  241. W: http://sylvestre.ledru.info/
  242. W: https://apt.llvm.org/
  243. D: Debian and Ubuntu packaging
  244. D: Continuous integration with jenkins
  245. N: Andrew Lenharth
  246. E: alenhar2@cs.uiuc.edu
  247. W: http://www.lenharth.org/~andrewl/
  248. D: Alpha backend
  249. D: Sampling based profiling
  250. N: Nick Lewycky
  251. E: nicholas@mxc.ca
  252. D: PredicateSimplifier pass
  253. N: Tony Linthicum, et. al.
  254. E: tlinth@codeaurora.org
  255. D: Backend for Qualcomm's Hexagon VLIW processor.
  256. N: Bruno Cardoso Lopes
  257. E: bruno.cardoso@gmail.com
  258. I: bruno
  259. W: http://brunocardoso.cc
  260. D: Mips backend
  261. D: Random ARM integrated assembler and assembly parser improvements
  262. D: General X86 AVX1 support
  263. N: Weining Lu
  264. E: luweining@loongson.cn
  265. D: LoongArch backend
  266. N: Duraid Madina
  267. E: duraid@octopus.com.au
  268. W: http://kinoko.c.u-tokyo.ac.jp/~duraid/
  269. D: IA64 backend, BigBlock register allocator
  270. N: John McCall
  271. E: rjmccall@apple.com
  272. D: Clang semantic analysis and IR generation
  273. N: Michael McCracken
  274. E: michael.mccracken@gmail.com
  275. D: Line number support for llvmgcc
  276. N: Fanbo Meng
  277. E: fanbo.meng@ibm.com
  278. D: z/OS support
  279. N: Vladimir Merzliakov
  280. E: wanderer@rsu.ru
  281. D: Test suite fixes for FreeBSD
  282. N: Scott Michel
  283. E: scottm@aero.org
  284. D: Added STI Cell SPU backend.
  285. N: Kai Nacke
  286. E: kai@redstar.de
  287. D: Support for implicit TLS model used with MS VC runtime
  288. D: Dumping of Win64 EH structures
  289. N: Takumi Nakamura
  290. I: chapuni
  291. E: geek4civic@gmail.com
  292. E: chapuni@hf.rim.or.jp
  293. D: Maintaining the Git monorepo
  294. W: https://github.com/llvm-project/
  295. S: Ebina, Japan
  296. N: Edward O'Callaghan
  297. E: eocallaghan@auroraux.org
  298. W: http://www.auroraux.org
  299. D: Add Clang support with various other improvements to utils/NewNightlyTest.pl
  300. D: Fix and maintain Solaris & AuroraUX support for llvm, various build warnings
  301. D: and error clean ups.
  302. N: Morten Ofstad
  303. E: morten@hue.no
  304. D: Visual C++ compatibility fixes
  305. N: Jakob Stoklund Olesen
  306. E: stoklund@2pi.dk
  307. D: Machine code verifier
  308. D: Blackfin backend
  309. D: Fast register allocator
  310. D: Greedy register allocator
  311. N: Richard Osborne
  312. E: richard@xmos.com
  313. D: XCore backend
  314. N: Piotr Padlewski
  315. E: piotr.padlewski@gmail.com
  316. D: !invariant.group metadata and other intrinsics for devirtualization in clang
  317. N: Devang Patel
  318. E: dpatel@apple.com
  319. D: LTO tool, PassManager rewrite, Loop Pass Manager, Loop Rotate
  320. D: GCC PCH Integration (llvm-gcc), llvm-gcc improvements
  321. D: Optimizer improvements, Loop Index Split
  322. N: Ana Pazos
  323. E: apazos@codeaurora.org
  324. D: Fixes and improvements to the AArch64 backend
  325. N: Wesley Peck
  326. E: peckw@wesleypeck.com
  327. W: http://wesleypeck.com/
  328. D: MicroBlaze backend
  329. N: Francois Pichet
  330. E: pichet2000@gmail.com
  331. D: MSVC support
  332. N: Simon Pilgrim
  333. E: llvm-dev@redking.me.uk
  334. D: X86 backend, Selection DAG, Scheduler Models and Cost Tables.
  335. N: Adrian Prantl
  336. E: aprantl@apple.com
  337. D: Debug Information
  338. N: Vladimir Prus
  339. W: http://vladimir_prus.blogspot.com
  340. E: ghost@cs.msu.su
  341. D: Made inst_iterator behave like a proper iterator, LowerConstantExprs pass
  342. N: QIU Chaofan
  343. E: qiucofan@cn.ibm.com
  344. D: PowerPC Backend Developer
  345. N: Kalle Raiskila
  346. E: kalle.rasikila@nokia.com
  347. D: Some bugfixes to CellSPU
  348. N: Xerxes Ranby
  349. E: xerxes@zafena.se
  350. D: Cmake dependency chain and various bug fixes
  351. N: Alex Rosenberg
  352. E: alexr@leftfield.org
  353. I: arosenberg
  354. D: ARM calling conventions rewrite, hard float support
  355. N: Chad Rosier
  356. E: mcrosier@codeaurora.org
  357. I: mcrosier
  358. D: AArch64 fast instruction selection pass
  359. D: Fixes and improvements to the ARM fast-isel pass
  360. D: Fixes and improvements to the AArch64 backend
  361. N: Nadav Rotem
  362. E: nadav.rotem@me.com
  363. D: X86 code generation improvements, Loop Vectorizer, SLP Vectorizer
  364. N: Roman Samoilov
  365. E: roman@codedgers.com
  366. D: MSIL backend
  367. N: Duncan Sands
  368. E: baldrick@free.fr
  369. I: baldrick
  370. D: Ada support in llvm-gcc
  371. D: Dragonegg plugin
  372. D: Exception handling improvements
  373. D: Type legalizer rewrite
  374. N: Ruchira Sasanka
  375. E: sasanka@uiuc.edu
  376. D: Graph coloring register allocator for the Sparc64 backend
  377. N: Alina Sbirlea
  378. E: alina.sbirlea@gmail.com
  379. D: MemorySSA, BatchAA, misc loop and new pass manager work.
  380. N: Arnold Schwaighofer
  381. E: arnold.schwaighofer@gmail.com
  382. D: Tail call optimization for the x86 backend
  383. N: Shantonu Sen
  384. E: ssen@apple.com
  385. D: Miscellaneous bug fixes
  386. N: Anand Shukla
  387. E: ashukla@cs.uiuc.edu
  388. D: The `paths' pass
  389. N: Michael J. Spencer
  390. E: bigcheesegs@gmail.com
  391. D: Shepherding Windows COFF support into MC.
  392. D: Lots of Windows stuff.
  393. N: Reid Spencer
  394. E: rspencer@reidspencer.com
  395. W: http://reidspencer.com/
  396. D: Lots of stuff, see: http://wiki.llvm.org/index.php/User:Reid
  397. N: Abhina Sreeskantharajan
  398. E: Abhina.Sreeskantharajan@ibm.com
  399. D: z/OS support
  400. N: Alp Toker
  401. E: alp@nuanti.com
  402. W: http://atoker.com/
  403. D: C++ frontend next generation standards implementation
  404. N: Craig Topper
  405. E: craig.topper@gmail.com
  406. D: X86 codegen and disassembler improvements. AVX2 support.
  407. N: Edwin Torok
  408. E: edwintorok@gmail.com
  409. D: Miscellaneous bug fixes
  410. N: Adam Treat
  411. E: manyoso@yahoo.com
  412. D: C++ bugs filed, and C++ front-end bug fixes.
  413. N: Andrew Trick
  414. E: atrick@apple.com
  415. D: Instruction Scheduling, ...
  416. N: Lauro Ramos Venancio
  417. E: lauro.venancio@indt.org.br
  418. D: ARM backend improvements
  419. D: Thread Local Storage implementation
  420. N: Phoebe Wang
  421. E: phoebe.wang@intel.com
  422. D: X86 bug fixes and new instruction support.
  423. N: Bill Wendling
  424. I: wendling
  425. E: isanbard@gmail.com
  426. D: Release manager, IR Linker, LTO.
  427. D: Bunches of stuff.
  428. N: Bob Wilson
  429. E: bob.wilson@acm.org
  430. D: Advanced SIMD (NEON) support in the ARM backend.
  431. N: QingShan Zhang
  432. N: steven.zhang
  433. E: zhangqingshan.zll@bytedance.com
  434. N: Li Jia He
  435. E: hljhehlj@cn.ibm.com
  436. D: PowerPC Backend Developer
  437. N: Zi Xuan Wu
  438. N: Zeson
  439. E: zixuan.wu@linux.alibaba.com
  440. N: Kang Zhang
  441. E: shkzhang@cn.ibm.com
  442. D: PowerPC Backend Developer
  443. N: Zheng Chen
  444. E: czhengsz@cn.ibm.com
  445. D: PowerPC Backend Developer
  446. N: Djordje Todorovic
  447. E: djordje.todorovic@rt-rk.com
  448. D: Debug Information
  449. N: Biplob Mishra
  450. E: biplmish@in.ibm.com
  451. D: PowerPC Analysis