LPM, logic and Variables have perm_string names.

This commit is contained in:
steve 2004-02-19 07:06:57 +00:00
parent 536068bdfb
commit 89acc41437
4 changed files with 25 additions and 13 deletions

View File

@ -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: elab_scope.cc,v 1.28 2004/02/18 17:11:55 steve Exp $" #ident "$Id: elab_scope.cc,v 1.29 2004/02/19 07:06:57 steve Exp $"
#endif #endif
# include "config.h" # include "config.h"
@ -385,7 +385,7 @@ void PData::elaborate_scope(Design*des, NetScope*scope) const
} }
const char*basename = hname_.peek_tail_name(); const char*basename = hname_.peek_tail_name();
NetVariable*tmp = new NetVariable(lex_strings.add(basename)); NetVariable*tmp = new NetVariable(lex_strings.make(basename));
tmp->set_line(*this); tmp->set_line(*this);
sub_scope->add_variable(tmp); sub_scope->add_variable(tmp);
} }
@ -549,6 +549,9 @@ void PWhile::elaborate_scope(Design*des, NetScope*scope) const
/* /*
* $Log: elab_scope.cc,v $ * $Log: elab_scope.cc,v $
* Revision 1.29 2004/02/19 07:06:57 steve
* LPM, logic and Variables have perm_string names.
*
* Revision 1.28 2004/02/18 17:11:55 steve * Revision 1.28 2004/02/18 17:11:55 steve
* Use perm_strings for named langiage items. * Use perm_strings for named langiage items.
* *

View File

@ -17,13 +17,13 @@
* 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: net_variable.cc,v 1.2 2003/03/06 00:28:42 steve Exp $" #ident "$Id: net_variable.cc,v 1.3 2004/02/19 07:06:57 steve Exp $"
#endif #endif
# include "config.h" # include "config.h"
# include "netlist.h" # include "netlist.h"
NetVariable::NetVariable(const char*name) NetVariable::NetVariable(perm_string name)
{ {
name_ = name; name_ = name;
scope_ = 0; scope_ = 0;
@ -34,7 +34,7 @@ NetVariable::~NetVariable()
{ {
} }
const char*NetVariable::basename() const perm_string NetVariable::basename() const
{ {
return name_; return name_;
} }
@ -70,6 +70,9 @@ const NetVariable* NetEVariable::variable() const
/* /*
* $Log: net_variable.cc,v $ * $Log: net_variable.cc,v $
* Revision 1.3 2004/02/19 07:06:57 steve
* LPM, logic and Variables have perm_string names.
*
* Revision 1.2 2003/03/06 00:28:42 steve * Revision 1.2 2003/03/06 00:28:42 steve
* All NetObj objects have lex_string base names. * All NetObj objects have lex_string base names.
* *

View File

@ -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: netlist.h,v 1.309 2004/02/19 06:57:10 steve Exp $" #ident "$Id: netlist.h,v 1.310 2004/02/19 07:06:57 steve Exp $"
#endif #endif
/* /*
@ -2174,16 +2174,16 @@ class NetVariable : public LineInfo {
public: public:
// The name must be a permallocated string. This class makes // The name must be a permallocated string. This class makes
// no attempt to preserve it. // no attempt to preserve it.
NetVariable(const char* name); NetVariable(perm_string name);
~NetVariable(); ~NetVariable();
const char* basename() const; perm_string basename() const;
NetScope* scope(); NetScope* scope();
const NetScope* scope() const; const NetScope* scope() const;
private: private:
const char* name_; perm_string name_;
NetScope*scope_; NetScope*scope_;
NetVariable*snext_; NetVariable*snext_;
@ -3315,6 +3315,9 @@ extern ostream& operator << (ostream&, NetNet::Type);
/* /*
* $Log: netlist.h,v $ * $Log: netlist.h,v $
* Revision 1.310 2004/02/19 07:06:57 steve
* LPM, logic and Variables have perm_string names.
*
* Revision 1.309 2004/02/19 06:57:10 steve * Revision 1.309 2004/02/19 06:57:10 steve
* Memory and Event names use perm_string. * Memory and Event names use perm_string.
* *

11
t-dll.h
View File

@ -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: t-dll.h,v 1.110 2004/02/19 06:57:11 steve Exp $" #ident "$Id: t-dll.h,v 1.111 2004/02/19 07:06:57 steve Exp $"
#endif #endif
# include "target.h" # include "target.h"
@ -288,7 +288,7 @@ struct ivl_expr_s {
struct ivl_lpm_s { struct ivl_lpm_s {
ivl_lpm_type_t type; ivl_lpm_type_t type;
ivl_scope_t scope; ivl_scope_t scope;
const char* name; perm_string name;
union { union {
struct ivl_lpm_ff_s { struct ivl_lpm_ff_s {
@ -408,7 +408,7 @@ struct ivl_net_logic_s {
ivl_logic_t type_; ivl_logic_t type_;
ivl_udp_t udp; ivl_udp_t udp;
const char* name_; perm_string name_;
ivl_scope_t scope_; ivl_scope_t scope_;
unsigned npins_; unsigned npins_;
@ -677,12 +677,15 @@ struct ivl_statement_s {
*/ */
struct ivl_variable_s { struct ivl_variable_s {
ivl_variable_type_t type; ivl_variable_type_t type;
const char* name; perm_string name;
ivl_scope_t scope; ivl_scope_t scope;
}; };
/* /*
* $Log: t-dll.h,v $ * $Log: t-dll.h,v $
* Revision 1.111 2004/02/19 07:06:57 steve
* LPM, logic and Variables have perm_string names.
*
* Revision 1.110 2004/02/19 06:57:11 steve * Revision 1.110 2004/02/19 06:57:11 steve
* Memory and Event names use perm_string. * Memory and Event names use perm_string.
* *