Creează un cont pentru a te abona la acest blog și a-i urmări articolele pe pagina Lectură.
-
mold and wild enable several tricks by default that other linkersdon't do.
-
LLVM 23.1 has been released.
-
Estimating branchprobabilities says how one branch splits.BlockFrequencyInfo turns those local numbers into per-blockfrequencies, which nearly every profitability decision in LLVM ends upreading.
-
LLVM's BranchProbabilityInfo assigns everymulti-successor terminator a probability distribution over itssuccessors.
-
The dominator tree lets usidentify natural loops: a back edgeT->H whose head H dominates its tailT defines a loop with the single entry H.
-
BumpPtrAllocator is LLVM's bump allocator (arenaallocator): each allocation bumps a pointer within a slab, andeverything is freed at once when the allocator dies.
-
tl;dr This blog post describes a recentSmallVector::push_back optimization for approximatelytrivially copyable element types.
-
LLVM has several hash tables.
-
With a sufficient number of users of an API, it does not matterwhat you promise in the contract: all observable behaviors of yoursystem will be depended on by somebody. — Hyrum's Law In a compiler, the most common form of Hyrum's Law is dependence onunspe…
-
Updated in 2026-05.
-
The C and C++ standards leave nearly every detail to theimplementation.
-
Most architectures encode direct branch/call instructions with aPC-relative displacement.
-
For those unfamiliar, lld is theLLVM linker, supporting PE/COFF, ELF, Mach-O, and WebAssembly ports.These object file formats differ significantly, and each port mustfollow the conventions of the platform's system linker.
-
Branch instructions on most architectures use PC-relative addressingwith a limited range.
-
I've created pr-shadow with vibecoding, a tool that maintains a shadow branch for GitHub pull requests(PR) that never requires force-pushing.
-
TODO 一如既往,主要在工具链领域耕耘。
-
tl;dr: Weak AVL trees are replacements for AVL trees and red-blacktrees.
-
周末从旧金山湾南部去Sacramento参观。
-
On most Linux platforms (except AArch32, which uses.ARM.exidx), DWARF .eh_frame is required forC++ exception handlingand stack unwinding to restorecallee-saved registers.
-
SFrame is a new stack walkingformat for userspace profiling, inspired by Linux's in-kernel ORC unwindformat.
-
LLVM 21.1 have been released.
-
tl;dr https://gist.github.com/MaskRay/74cdaa83c1f44ee105fcebcdff0ba9a7is a single-file Ruby program that downloads and compiles multiplecompression utilities, then benchmarks their compression anddecompression performance on a specified input file, finally