From Fedora Project Wiki

(→‎GCC work: Add GCC 11 static analysis blog post)
(→‎GCC work: add links to my blog posts for GCC 12, 13, and 14.)
Line 14: Line 14:


= GCC work =
= GCC work =
* GCC 14:
** Blog post: [https://developers.redhat.com/articles/2024/04/03/improvements-static-analysis-gcc-14-compiler Improvements to static analysis in the GCC 14 compiler]
* GCC 13:
** Blog post: [https://developers.redhat.com/articles/2023/05/31/improvements-static-analysis-gcc-13-compiler Improvements to static analysis in the GCC 13 compiler]
* GCC 12:
** Blog post: [https://developers.redhat.com/articles/2022/04/12/state-static-analysis-gcc-12-compiler The state of static analysis in the GCC 12 compiler]
** Blog post: [https://developers.redhat.com/articles/2022/01/12/prevent-trojan-source-attacks-gcc-12 Prevent Trojan Source attacks with GCC 12]
* GCC 11:
* GCC 11:
** Blog post: [https://developers.redhat.com/blog/2021/01/28/static-analysis-updates-in-gcc-11/ Static analysis updates in GCC 11]
** Blog post: [https://developers.redhat.com/blog/2021/01/28/static-analysis-updates-in-gcc-11/ Static analysis updates in GCC 11]

Revision as of 20:06, 11 October 2024

David Malcolm

Email: dmalcolm@redhat.com

My Fedora People page: http://dmalcolm.fedorapeople.org/

I'm currently working on GCC upstream. Previously I worked on the Python runtimes within Fedora and Red Hat Enterprise Linux.

I'm interested in static code analysis

My old blog: http://dmalcolm.livejournal.com/

A very old, out-of-date Red Hat People Page: http://people.redhat.com/dmalcolm

GCC work

Some of the software I've written

  • libgccjit: a branch of GCC allowing it to be built as a shared library for use in Just-In-Time compilation
  • gcc-python-plugin: allowing you to write new GCC plugins in Python.
  • cpychecker: a static analysis pass for GCC to find bugs in C extensions to Python, written in Python using gcc-python-plugin
  • gdb Python hooks for debugging CPython itself
  • gdb-heap, an extension to gdb for analyzing malloc/free
  • squeal: a SQL-like syntax for use in shell pipelines
  • asmdiff: tool for comparing objdump results
  • gccinvocation: Python module for parsing GCC invocation lines
  • jamais-vu: a tool for working with DejaGnu output
  • firehose: a proposed common format for static analyzer output, along with a Python module for working with it
  • mock-with-analysis: a way of rebuilding an RPM in mock, injecting static analysis, and capturing the result in Firehose format
  • gcc-build: some scripts to make it easier to hack on GCC

Older stuff