mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-03 21:09:12 +00:00 
			
		
		
		
	Refactoring {SigSpec|SigChunk}(RTLIL::Wire *wire, ..) constructor -- step 1/3
This commit is contained in:
		
							parent
							
								
									c61467a32c
								
							
						
					
					
						commit
						260c19ec5a
					
				
					 4 changed files with 45 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -1324,6 +1324,13 @@ RTLIL::SigChunk::SigChunk(const RTLIL::Const &value)
 | 
			
		|||
	offset = 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigChunk::SigChunk(RTLIL::Wire *wire)
 | 
			
		||||
{
 | 
			
		||||
	this->wire = wire;
 | 
			
		||||
	this->width = wire->width;
 | 
			
		||||
	this->offset = 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigChunk::SigChunk(RTLIL::Wire *wire, int width, int offset)
 | 
			
		||||
{
 | 
			
		||||
	this->wire = wire;
 | 
			
		||||
| 
						 | 
				
			
			@ -1331,6 +1338,15 @@ RTLIL::SigChunk::SigChunk(RTLIL::Wire *wire, int width, int offset)
 | 
			
		|||
	this->offset = offset;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigChunk RTLIL::SigChunk::grml(RTLIL::Wire *wire, int offset, int width)
 | 
			
		||||
{
 | 
			
		||||
	RTLIL::SigChunk chunk;
 | 
			
		||||
	chunk.wire = wire;
 | 
			
		||||
	chunk.width = width;
 | 
			
		||||
	chunk.offset = offset;
 | 
			
		||||
	return chunk;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigChunk::SigChunk(const std::string &str)
 | 
			
		||||
{
 | 
			
		||||
	wire = NULL;
 | 
			
		||||
| 
						 | 
				
			
			@ -1432,6 +1448,13 @@ RTLIL::SigSpec::SigSpec(const RTLIL::SigChunk &chunk)
 | 
			
		|||
	check();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigSpec::SigSpec(RTLIL::Wire *wire)
 | 
			
		||||
{
 | 
			
		||||
	chunks_.push_back(RTLIL::SigChunk(wire));
 | 
			
		||||
	width_ = chunks_.back().width;
 | 
			
		||||
	check();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigSpec::SigSpec(RTLIL::Wire *wire, int width, int offset)
 | 
			
		||||
{
 | 
			
		||||
	chunks_.push_back(RTLIL::SigChunk(wire, width, offset));
 | 
			
		||||
| 
						 | 
				
			
			@ -1439,6 +1462,15 @@ RTLIL::SigSpec::SigSpec(RTLIL::Wire *wire, int width, int offset)
 | 
			
		|||
	check();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigSpec RTLIL::SigSpec::grml(RTLIL::Wire *wire, int offset, int width)
 | 
			
		||||
{
 | 
			
		||||
	RTLIL::SigSpec sig;
 | 
			
		||||
	sig.chunks_.push_back(RTLIL::SigChunk::grml(wire, offset, width));
 | 
			
		||||
	sig.width_ = sig.chunks_.back().width;
 | 
			
		||||
	sig.check();
 | 
			
		||||
	return sig;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
RTLIL::SigSpec::SigSpec(const std::string &str)
 | 
			
		||||
{
 | 
			
		||||
	chunks_.push_back(RTLIL::SigChunk(str));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -462,7 +462,10 @@ struct RTLIL::SigChunk {
 | 
			
		|||
	int width, offset;
 | 
			
		||||
	SigChunk();
 | 
			
		||||
	SigChunk(const RTLIL::Const &value);
 | 
			
		||||
	SigChunk(RTLIL::Wire *wire, int width, int offset);
 | 
			
		||||
	SigChunk(RTLIL::Wire *wire);
 | 
			
		||||
	SigChunk(RTLIL::Wire *wire, int width); // <-- using this will cause a linker error
 | 
			
		||||
	SigChunk(RTLIL::Wire *wire, int width, int offset) __attribute__((deprecated));
 | 
			
		||||
	static SigChunk grml(RTLIL::Wire *wire, int offset, int width = 1);
 | 
			
		||||
	SigChunk(const std::string &str);
 | 
			
		||||
	SigChunk(int val, int width = 32);
 | 
			
		||||
	SigChunk(RTLIL::State bit, int width = 1);
 | 
			
		||||
| 
						 | 
				
			
			@ -522,7 +525,10 @@ public:
 | 
			
		|||
	SigSpec();
 | 
			
		||||
	SigSpec(const RTLIL::Const &value);
 | 
			
		||||
	SigSpec(const RTLIL::SigChunk &chunk);
 | 
			
		||||
	SigSpec(RTLIL::Wire *wire, int width = -1, int offset = 0);
 | 
			
		||||
	SigSpec(RTLIL::Wire *wire);
 | 
			
		||||
	SigSpec(RTLIL::Wire *wire, int width); // <-- using this will cause a linker error
 | 
			
		||||
	SigSpec(RTLIL::Wire *wire, int width, int offset) __attribute__((deprecated));
 | 
			
		||||
	static SigSpec grml(RTLIL::Wire *wire, int offset, int width = 1);
 | 
			
		||||
	SigSpec(const std::string &str);
 | 
			
		||||
	SigSpec(int val, int width = 32);
 | 
			
		||||
	SigSpec(RTLIL::State bit, int width = 1);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue