diff options
| author | Eddie Hung <eddie@fpgeh.com> | 2019-09-25 22:58:03 -0700 | 
|---|---|---|
| committer | Eddie Hung <eddie@fpgeh.com> | 2019-09-25 22:58:03 -0700 | 
| commit | f1de93edf5b5c73440d445d8d6fa32251d2bdab1 (patch) | |
| tree | aa244105f95faefe8544024340111c791c0c6e52 | |
| parent | cd8a640989d0819266d2678304951de2a247405d (diff) | |
| download | yosys-f1de93edf5b5c73440d445d8d6fa32251d2bdab1.tar.gz yosys-f1de93edf5b5c73440d445d8d6fa32251d2bdab1.tar.bz2 yosys-f1de93edf5b5c73440d445d8d6fa32251d2bdab1.zip  | |
Do not die if DSP48E1.P has no users (would otherwise get 'clean'-ed)
| -rw-r--r-- | passes/pmgen/xilinx_dsp.pmg | 6 | 
1 files changed, 5 insertions, 1 deletions
diff --git a/passes/pmgen/xilinx_dsp.pmg b/passes/pmgen/xilinx_dsp.pmg index 0a345e88d..3d0b1f2c3 100644 --- a/passes/pmgen/xilinx_dsp.pmg +++ b/passes/pmgen/xilinx_dsp.pmg @@ -53,6 +53,10 @@ code sigA sigB sigC sigD sigM clock  	}  	else  		sigM = P; +	// This sigM could have no users if downstream $add +	//   is narrower than $mul result, for example +	if (sigM.empty()) +		reject;  	clock = port(dsp, \CLK, SigBit());  endcode @@ -261,7 +265,7 @@ endcode  match postAdd  	// Ensure that Z mux is not already used -	if port(dsp, \OPMODE).extract(4,3).is_fully_zero() +	if port(dsp, \OPMODE, SigSpec()).extract(4,3).is_fully_zero()  	select postAdd->type.in($add)  	select GetSize(port(postAdd, \Y)) <= 48  | 
