[RFC] Assignment tracking: A better way of specifying variable locations in IR

I’ve omitted a few patches that are redundant if we can solve the issue I mention here Auto-undef debug uses of a deleted value