systemc-clang 2.0.0
Parsing SystemC constructs
|
Public Member Functions | |
__init__ (self) | |
hcomma (self, tree) | |
blkassign (self, tree) | |
hbinop (self, tree) | |
hnsbinop (self, tree) | |
stmts (self, tree) | |
Public Member Functions inherited from parselib.transforms.top_down.TopDown | |
__default__ (self, t) | |
Public Attributes | |
list | broken_down_ops = [] |
bool | has_comma = False |
lifted = set() | |
bool | nesting_assign = False |
The comma transformation is aimed to handle the case such as k = (i++, j++) in the code. This type of operator is not supported in Verilog and thus we need to break the code into sequence of code such as: i++ k = j++ Note: k = j++ will be handled by another pass that gets j and j++ correctly To handle this, we break a hBinop , [ lhs rhs ] node into two. lhs will be appended to the parent and rhs remains
Definition at line 7 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.__init__ | ( | self | ) |
Reimplemented from parselib.transforms.top_down.TopDown.
Definition at line 20 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.blkassign | ( | self, | |
tree ) |
Definition at line 34 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.hbinop | ( | self, | |
tree ) |
Definition at line 45 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.hcomma | ( | self, | |
tree ) |
Definition at line 27 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.hnsbinop | ( | self, | |
tree ) |
Definition at line 57 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.stmts | ( | self, | |
tree ) |
Definition at line 69 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.broken_down_ops = [] |
Definition at line 22 of file comma_transformation.py.
bool parselib.transforms.comma_transformation.CommaTransformation.has_comma = False |
Definition at line 23 of file comma_transformation.py.
parselib.transforms.comma_transformation.CommaTransformation.lifted = set() |
Definition at line 24 of file comma_transformation.py.
bool parselib.transforms.comma_transformation.CommaTransformation.nesting_assign = False |
Definition at line 25 of file comma_transformation.py.