diff options
| author | Kazuki Sakamoto <sakamoto@splhack.org> | 2020-06-19 19:09:43 -0700 | 
|---|---|---|
| committer | Kazuki Sakamoto <sakamoto@splhack.org> | 2020-06-19 19:09:43 -0700 | 
| commit | 429d37ff41b5a058fdd0b70f23a55170a973c369 (patch) | |
| tree | 3919c85abfd44d6b0c2b6638dd73fc84945c1e08 /frontends | |
| parent | 6bf75be73bc0767b5df9e3fa33a58cfe6aae9f89 (diff) | |
| download | yosys-429d37ff41b5a058fdd0b70f23a55170a973c369.tar.gz yosys-429d37ff41b5a058fdd0b70f23a55170a973c369.tar.bz2 yosys-429d37ff41b5a058fdd0b70f23a55170a973c369.zip | |
static cast: simplify
Diffstat (limited to 'frontends')
| -rw-r--r-- | frontends/ast/simplify.cc | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/frontends/ast/simplify.cc b/frontends/ast/simplify.cc index 1d5dd91a7..e2da17c09 100644 --- a/frontends/ast/simplify.cc +++ b/frontends/ast/simplify.cc @@ -3484,6 +3484,13 @@ replace_fcall_later:;  				}  			}  			break; +		case AST_CAST_SIZE: +			if (children.at(0)->type == AST_CONSTANT && children.at(1)->type == AST_CONSTANT) { +				int width = children[0]->bitsAsConst().as_int(); +				RTLIL::Const val = children[1]->bitsAsConst(width); +				newNode = mkconst_bits(val.bits, children[1]->is_signed); +			} +			break;  		case AST_CONCAT:  			string_op = !children.empty();  			for (auto it = children.begin(); it != children.end(); it++) { | 
