cpplinks
ssabook
Our great sponsors
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.
cpplinks
-
Needed an advice in compilers dev!
linking and loading: https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md - in addition to the aforementioned books and blog posts, there also some pretty good talks: https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md#talks
-
How do you test compiler projects?
For more compilers correctness* resources see https://github.com/MattPD/cpplinks/blob/master/compilers.correctness.md
-
Assemblers and linkers resources
As for linkers and loaders, see https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md
-
The Danger of Atomic Operations
More: https://github.com/MattPD/cpplinks/blob/master/atomics.lockfree.memory_model.md
-
How to move onto intermediate c++?
Take the red pill and see how deep the rabbit hole goes... https://github.com/MattPD/cpplinks/ https://github.com/shafik/cpp_learning
-
How should I learn x64 instructions?
x86-64 tutorials here should be a good starting point: https://github.com/MattPD/cpplinks/blob/master/assembly.x86.md#tutorials
-
Where should a static analysis beginner start?
See also static analysis resources (more C++-oriented, although some of the readings are general): https://github.com/MattPD/cpplinks/blob/master/analysis.static.md#readings-books and https://gist.github.com/MattPD/71b63a3e1600c2b52e1db80fa2834e60#correctness-in-practice (formal methods and program analysis in industry).
-
Follow-up resources to Crafting Interpreters
Further readings: Book recommendations in https://github.com/MattPD/cpplinks/blob/master/compilers.md#books as well as program analysis resources (in particular lattice theory, type systems and programming languages theory, related notation): https://gist.github.com/MattPD/00573ee14bf85ccac6bed3c0678ddbef#program-analysis-resources
-
Apple M1 CPU Microarchitectures (Firestorm and Icestorm): instruction tables describing throughput, latency, and uops
Microarchitectural performance analysis research is a pretty active and interesting area--see also: https://github.com/MattPD/cpplinks/blob/master/performance.tools.md#microarchitecture
-
GDB TUI mode
For more on GDB see: https://github.com/MattPD/cpplinks/blob/master/debugging.md#gdb
ssabook
- Where can I find resources and guides on how to build compiler backends?
-
Follow-up resources to Crafting Interpreters
For more on the analysis & compiler optimization side, "SSA-based Compiler Design" (http://ssabook.gforge.inria.fr/latest/; GitHub Mirror: https://github.com/pfalcon/ssabook) is a good follow-up.
What are some alternatives?
nvim-gdb - Neovim thin wrapper for GDB, LLDB, PDB/PDB++ and BashDB
klara - Automatic test case generation for python and static analysis library
computer-architecture-and-systems-resources - A curated list of Computer Architecture and Systems resources
Chronos - Chronos - A static race detector for the go language
cppcoro - A library of C++ coroutine abstractions for the coroutines TS
SABRE.js - Substation Alpha suBtitles REnderer -- A Gpu Accelerated Javascript Advanced SubStation Alpha Subtitles Renderer.
clang-tutor - A collection of out-of-tree Clang plugins for teaching and learning
Penguin-Subtitle-Player - An open-source, cross-platform standalone subtitle player
lzz-bin - Lzz: The Lazy C++ Programmer's Tool. Archive of lzz 2.8.2 binaries + documentation
ghb-thesis - Source code of my doctoral dissertation
.NET Runtime - .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
gdb-dashboard - Modular visual interface for GDB in Python