public AddressSetView flowConstants(final Program program, Address flowStart,
			AddressSetView flowSet, final SymbolicPropogator symEval, final TaskMonitor monitor)
			throws CancelledException {

		ContextEvaluator eval = new ConstantPropagationContextEvaluator(monitor)
				.setTrustWritableMemory(trustWriteMemOption)
			    .setMinSpeculativeOffset(minSpeculativeRefAddress)
			    .setMaxSpeculativeOffset(maxSpeculativeRefAddress)
			    .setMinStoreLoadOffset(minStoreLoadRefAddress)
			    .setCreateComplexDataFromPointers(createComplexDataFromPointers);

		return symEval.flowConstants(flowStart, flowSet, eval, true, monitor);
	}
Actually use the setup evaluator to flow the constants

@param flowStart - address to start flowing at
@param flowSet - address set to restrict constant flowing to
@param symEval - symbolic propagator to be used
@param monitor - monitor to check canceled
@return the address set of instructions which were followed
@throws CancelledException
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/analysis/ConstantPropagationAnalyzer.java