public IXILMapping TryAllocate(Component host, XILInstr instr, TypeDescriptor[] operandTypes, TypeDescriptor[] resultTypes, IProject proj) { StdLogicVector constSLV; if (!TryGetConstSLV(instr, resultTypes[0], out constSLV)) { return(null); } var clts = new ConstLoadingTransactionSite(host, constSLV, CreateSignalsForConstants); return(new ConstLoadingXILMapping(clts)); }
public IEnumerable <IXILMapping> TryMap(ITransactionSite taSite, XILInstr instr, TypeDescriptor[] operandTypes, TypeDescriptor[] resultTypes) { StdLogicVector constSLV; if (!TryGetConstSLV(instr, resultTypes[0], out constSLV)) { yield break; } var fu = taSite.Host; ConstLoadingTransactionSite clts = new ConstLoadingTransactionSite(fu, constSLV, CreateSignalsForConstants); yield return(new ConstLoadingXILMapping(clts)); }
/// <summary> /// Constructs a new instance. /// </summary> /// <param name="site">transaction site</param> public ConstLoadingXILMapping(ConstLoadingTransactionSite site) { _site = site; }
public IXILMapping TryAllocate(Component host, XILInstr instr, TypeDescriptor[] operandTypes, TypeDescriptor[] resultTypes, IProject proj) { StdLogicVector constSLV; if (!TryGetConstSLV(instr, resultTypes[0], out constSLV)) return null; var clts = new ConstLoadingTransactionSite(host, constSLV, CreateSignalsForConstants); return new ConstLoadingXILMapping(clts); }
public IEnumerable<IXILMapping> TryMap(ITransactionSite taSite, XILInstr instr, TypeDescriptor[] operandTypes, TypeDescriptor[] resultTypes) { StdLogicVector constSLV; if (!TryGetConstSLV(instr, resultTypes[0], out constSLV)) yield break; var fu = taSite.Host; ConstLoadingTransactionSite clts = new ConstLoadingTransactionSite(fu, constSLV, CreateSignalsForConstants); yield return new ConstLoadingXILMapping(clts); }