clangir
checkedc-llvm-project
clangir | checkedc-llvm-project | |
---|---|---|
2 | 1 | |
287 | 13 | |
3.5% | - | |
10.0 | 6.0 | |
9 days ago | 7 days ago | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
clangir
-
Decoding C/C++ Compilation Process: From Source Code to Binary
It could be cool to see some explanation of CFG representations or GIMPLE/LLVM here. GCC/Clang can print those out as text, or just compile to that code and not go lower if you ask them to. There are some interesting things you can do with bytecode, like Rellic, AFL++, or optview2. It seems a bit reductive imo to go straight from high-level code to disassembly without at all examining any layers in between. Especially if we use something like Polygeist or CIR.
-
Compilers and IRS: LLVM IR, SPIR-V, and MLIR
I'm also curious, especially they seem to be gearing towards analysis as well.
https://github.com/llvm/clangir/blob/main/clang/lib/CIR/Dial...
checkedc-llvm-project
-
Checked C
Note that active development seems to be continuing here:
https://github.com/secure-sw-dev/checkedc-llvm-project
What are some alternatives?
vast - VAST is an experimental compiler pipeline designed for program analysis of C and C++. It provides a tower of IRs as MLIR dialects to choose the best fit representations for a program analysis or further program abstraction.
noplate - generic data structures
Polygeist - C/C++ frontend for MLIR. Also features polyhedral optimizations, parallel optimizations, and more!
CodeHawk-C - CodeHawk C Analyzer: sound static analysis of memory safety (undefined behavior)
optview2 - User-oriented fork of LLVM's opt-viewer
Hikari-LLVM15 - A fork of Hikari Obfuscator [WIP]
demangle-mode - Emacs minor mode that automatically demangles C++, D, and Rust symbols
CompCert - The CompCert formally-verified C compiler
codegena - Codegeneration tool
codeql - CodeQL: the libraries and queries that power security researchers around the world, as well as code scanning in GitHub Advanced Security