Skip to content

Commit

Permalink
Use PartSelect/PV and VP to handle part selects through ports.
Browse files Browse the repository at this point in the history
  • Loading branch information
steve committed Jan 9, 2005
1 parent 6c711ee commit 9e94afe
Show file tree
Hide file tree
Showing 12 changed files with 476 additions and 311 deletions.
8 changes: 7 additions & 1 deletion PExpr.h
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/ */
#ifdef HAVE_CVS_IDENT #ifdef HAVE_CVS_IDENT
#ident "$Id: PExpr.h,v 1.67 2004/12/29 23:55:43 steve Exp $" #ident "$Id: PExpr.h,v 1.68 2005/01/09 20:16:00 steve Exp $"
#endif #endif


# include <string> # include <string>
Expand Down Expand Up @@ -276,6 +276,9 @@ class PEIdent : public PExpr {
NetAssign_* elaborate_mem_lval_(Design*des, NetScope*scope, NetAssign_* elaborate_mem_lval_(Design*des, NetScope*scope,
NetMemory*mem) const; NetMemory*mem) const;


bool eval_part_select_(Design*des, NetScope*scope, NetNet*sig,
unsigned&midx, unsigned&lidx) const;

}; };


class PENumber : public PExpr { class PENumber : public PExpr {
Expand Down Expand Up @@ -503,6 +506,9 @@ class PECallFunction : public PExpr {


/* /*
* $Log: PExpr.h,v $ * $Log: PExpr.h,v $
* Revision 1.68 2005/01/09 20:16:00 steve
* Use PartSelect/PV and VP to handle part selects through ports.
*
* Revision 1.67 2004/12/29 23:55:43 steve * Revision 1.67 2004/12/29 23:55:43 steve
* Unify elaboration of l-values for all proceedural assignments, * Unify elaboration of l-values for all proceedural assignments,
* including assing, cassign and force. * including assing, cassign and force.
Expand Down
19 changes: 17 additions & 2 deletions design_dump.cc
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/ */
#ifdef HAVE_CVS_IDENT #ifdef HAVE_CVS_IDENT
#ident "$Id: design_dump.cc,v 1.151 2004/12/29 23:55:43 steve Exp $" #ident "$Id: design_dump.cc,v 1.152 2005/01/09 20:16:00 steve Exp $"
#endif #endif


# include "config.h" # include "config.h"
Expand Down Expand Up @@ -356,7 +356,19 @@ void NetModulo::dump_node(ostream&o, unsigned ind) const


void NetPartSelect::dump_node(ostream&o, unsigned ind) const void NetPartSelect::dump_node(ostream&o, unsigned ind) const
{ {
o << setw(ind) << "" << "NetPartSelect: " const char*pt = "";
switch (dir_) {
case VP:
pt = "VP";
break;
case PV:
pt = "PV";
break;
case BI:
pt = "BI";
break;
}
o << setw(ind) << "" << "NetPartSelect(" << pt << "): "
<< name() << " off=" << off_ << " wid=" << wid_ <<endl; << name() << " off=" << off_ << " wid=" << wid_ <<endl;
dump_node_pins(o, ind+4); dump_node_pins(o, ind+4);
dump_obj_attr(o, ind+4); dump_obj_attr(o, ind+4);
Expand Down Expand Up @@ -1097,6 +1109,9 @@ void Design::dump(ostream&o) const


/* /*
* $Log: design_dump.cc,v $ * $Log: design_dump.cc,v $
* Revision 1.152 2005/01/09 20:16:00 steve
* Use PartSelect/PV and VP to handle part selects through ports.
*
* Revision 1.151 2004/12/29 23:55:43 steve * Revision 1.151 2004/12/29 23:55:43 steve
* Unify elaboration of l-values for all proceedural assignments, * Unify elaboration of l-values for all proceedural assignments,
* including assing, cassign and force. * including assing, cassign and force.
Expand Down
Loading

0 comments on commit 9e94afe

Please sign in to comment.