From f36c06c3ee8d8bb4c381904996f230e741be43c9 Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Wed, 29 Apr 2026 11:21:39 +0200 Subject: [PATCH] rework docs --- doc/il.txt | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/doc/il.txt b/doc/il.txt index 1f1bc29..6d1e979 100644 --- a/doc/il.txt +++ b/doc/il.txt @@ -228,14 +228,13 @@ symbol's numeric value is resolved at runtime in the thread-local storage. When the `extern` keyword prefixes a symbol name, the -symbol is accessed indirectly through the Global Offset -Table (GOT). Function calls to extern symbols use the -Procedure Linkage Table (PLT). This enables PIE and -PIC code generation for symbols that are not part of -the main executable. When `extern` is combined with -`thread`, the symbol is accessed using the initial-exec -TLS model, suitable for thread-local variables defined -in shared libraries. +symbol is accessed indirectly through a table edited +by the dynamic linker (e.g., GOT/PLT). This enables +PIE/PIC code generation. When `extern` is combined +with `thread`, the symbol is accessed using the +initial-exec TLS model, suitable for thread-local +variables defined in shared objects available at +startup time (i.e., not loaded through dlopen). Vals are used as arguments in regular, phi, and jump instructions within function definitions. They are