After kernel/fw compile, parse the relevant .d files and hash filenames
On the device, compute hashed filenames from __FILE_NAME__ and store the hash in the mailbox on assert
In Watcher, read out the hash and lookup to report filename
May not be able to handle fill paths, since .d file only has .h files for then most part, and they are not always in the same dir as the corresponding .cpp file.
Current implementation can only report line numbers, since we don't want to store the file name strings in the limited device mailbox.
We can do this similarly to how it's done in budabackend, see: https://github.com/tenstorrent/tt-budabackend/blob/main/src/firmware/riscv/common/fw_debug.h https://github.com/tenstorrent/tt-budabackend/blob/main/src/firmware/riscv/toolchain/fwlog.py
Need to generate a .d file, see: d_file.patch
Process would be: