uplift
Uplift: surviving a tt-metal / tt-umd pin bump
When the tt-metal pin moves forward (e.g. a companion change merges to main, or
you re-pin to a newer commit), you import two moving parts at once: the
tt-metal source and the tt-umd submodule it points at. Either can regress the
emule build because emule substitutes its own runtime (SWEmuleChip,
emulated_program_runner.cpp) and JIT kernel shims (include/jit_hw/) for the
real hardware path. This skill is the methodology for turning a red post-bump
regression into a proven root cause and a minimal, faithful fix.
The governing principle, learned the hard way: prove it by building and
running, not by reading git log. Pickaxe/git show/blame routinely mislead
(moved code, squash merges, shallow submodule object DBs that render a commit as
a whole-tree add). A bisection that compiles and runs an oracle is the only
authority.