public static Pair<BigInteger, TraceMemoryState> evaluateWithState(PcodeExpression expr,
			Trace trace, long snap, TraceThread thread, int frame) {
		Pair<byte[], TraceMemoryState> bytesPair =
			evaluateBytesWithState(expr, trace, snap, thread, frame);
		byte[] bytes = bytesPair.getLeft();
		return new ImmutablePair<>(
			Utils.bytesToBigInteger(bytes, bytes.length, expr.getLanguage().isBigEndian(), false),
			bytesPair.getRight());
	}
Evaluate a compiled p-code expression on the given trace

@param expr the expression
@param trace the trace
@param snap the snap
@param thread the thread, required if register space is used
@param frame the frame, for when register space is used
@return the value and state of the expression
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/pcode/exec/trace/TraceSleighUtils.java