@Override
	public RegisterValue getNewRegisterValue(RegisterValue oldRegisterValue) {
		Register oldReg = oldRegisterValue.getRegister();
		if (!oldReg.isProcessorContext()) {
			return super.getNewRegisterValue(oldRegisterValue);
		}
		Register newContextReg = getNewLanguage().getContextBaseRegister();
		if (newContextReg == Register.NO_CONTEXT || (clearAllContext && contextSettings == null)) {
			return null;
		}
		RegisterValue newValue = null;
		if (!clearAllContext) {
			newValue = super.getNewRegisterValue(oldRegisterValue);
		}
		if (contextSettings == null) {
			return newValue;
		}
		if (newValue == null) {
			newValue = new RegisterValue(newContextReg);
		}
		for (Register subReg : newContextReg.getChildRegisters()) {
			BigInteger val = contextSettings.get(subReg.getName());
			if (val != null) {
				newValue = newValue.combineValues(new RegisterValue(subReg, val));
			}
		}
		return newValue;
	}
<code>SimpleLanguageTranslator</code> provides a simple translator which
derives its mappings from an XML translation specification file.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/util/SimpleLanguageTranslator.java