public int hash(int reg) {
			reg = SimpleCRC32.hashOneByte(reg, slot);
			reg = SimpleCRC32.hashOneByte(reg, transtable[op.getOpcode()]);
			long val = op.getSeqnum().getTarget().getOffset();
			int sz = op.getSeqnum().getTarget().getSize();
			for (int i = 0; i < sz; i += 8) {
				reg = SimpleCRC32.hashOneByte(reg, (int) val);
				val >>= 8;
			}
			return reg;
		}
An edge between a Varnode and a PcodeOp

A DynamicHash is defined on a sub-graph of the data-flow, and this defines an edge
in the sub-graph.  The edge can either be from an input Varnode to the PcodeOp
that reads it, or from a PcodeOp to the Varnode it defines.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/pcode/DynamicHash.java