public static String vnToString(Varnode vn, Language language) {
		Register register =
			language == null ? null : language.getRegister(vn.getAddress(), vn.getSize());
		if (register != null) {
			return String.format("%s:%d", register.getName(), vn.getSize());
		}
		return String.format("%s:%d", vn.getAddress(), vn.getSize());
	}
The location of a value

<p>
This is an analog to {@link VariableStorage}, except that this records the actual storage
location of the evaluated variable or expression. This does not incorporate storage of
intermediate dereferenced values. For example, suppose {@code R0 = 0xdeadbeef}, and we want to
evaluate {@code *:4 R0}. The storage would be {@code ram:deadbeef:4}, not
{@code R0,ram:deadbeef:4}.
Ghidra/Framework/Emulation/src/main/java/ghidra/pcode/exec/ValueLocation.java