Support byte, shortint, int, longint in variables, parameters and functions.

Internals: function/var sizing and signing now comes via dtypep()
Internals: cleanup code that widths parameters (again)
This commit is contained in:
Wilson Snyder
2009-11-02 22:14:11 -05:00
parent 4c26792c9b
commit 6bc81d3d26
12 changed files with 321 additions and 198 deletions
+2 -3
View File
@@ -98,14 +98,12 @@ string AstVar::verilogKwd() const {
return "input";
} else if (isOutput()) {
return "output";
} else if (isInteger()) {
return "integer";
} else if (isTristate()) {
return "tri";
} else if (varType()==AstVarType::WIRE) {
return "wire";
} else {
return "reg";
return dtypep()->name();
}
}
@@ -327,6 +325,7 @@ void AstAttrOf::dump(ostream& str) {
void AstBasicDType::dump(ostream& str) {
this->AstNode::dump(str);
str<<" ["<<keyword().ascii()<<"]";
if (implicit()) str<<" [IMPLICIT]";
}
void AstCast::dump(ostream& str) {
this->AstNode::dump(str);