Los punteros no son solo enteros: por qué el compilador rastrea su procedencia
Pointer Provenance in Rust vs. C++: Pointers Are Not Just Glorified Ints

La procedencia (provenance) es una información oculta que indica de qué asignación de memoria proviene cada puntero, y LLVM la usa para optimizar. En C++, convertir un puntero a uintptr_t expone esa procedencia y obliga al optimizador a desactivar ciertas mejoras. Rust ofrece APIs como addr(), with_addr() y without_provenance() para declarar la intención de forma explícita, y Miri puede detectar usos indebidos. El experimento muestra que la versión en Rust tampoco se optimiza, pero las APIs más expresivas dejan margen para hacerlo en el futuro.
La procedencia, en resumen, es una pieza de información oculta que rastrea de qué asignación proviene un puntero, y que LLVM utiliza para optimizar.