Permalink
Browse files

Avoid emitting to vvp local net symbols.

  • Loading branch information...
1 parent 54b96ea commit 301040a67a0f8be27a98429b4153a1c02edbe25d steve committed Jul 5, 2002
Showing with 47 additions and 7 deletions.
  1. +5 −1 elab_net.cc
  2. +5 −1 expr_synth.cc
  3. +1 −0 ivl.def
  4. +9 −1 ivl_target.h
  5. +9 −1 t-dll-api.cc
  6. +5 −1 t-dll.cc
  7. +5 −1 t-dll.h
  8. +8 −1 tgt-vvp/vvp_scope.c
View
@@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: elab_net.cc,v 1.92 2002/06/22 04:22:40 steve Exp $"
+#ident "$Id: elab_net.cc,v 1.93 2002/07/05 21:26:17 steve Exp $"
#endif
# include "config.h"
@@ -398,6 +398,7 @@ NetNet* PEBinary::elaborate_net_cmp_(Design*des, NetScope*scope,
verinum::V0);
des->add_node(tmp);
zero = new NetNet(scope, scope->local_hsymbol(), NetNet::WIRE);
+ zero->local_flag(true);
connect(tmp->pin(0), zero->pin(0));
}
@@ -2121,6 +2122,9 @@ NetNet* PEUnary::elaborate_net(Design*des, NetScope*scope,
/*
* $Log: elab_net.cc,v $
+ * Revision 1.93 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.92 2002/06/22 04:22:40 steve
* Wide unary minus in continuous assignments.
*
View
@@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: expr_synth.cc,v 1.33 2002/05/26 01:39:02 steve Exp $"
+#ident "$Id: expr_synth.cc,v 1.34 2002/07/05 21:26:17 steve Exp $"
#endif
# include "config.h"
@@ -50,6 +50,7 @@ NetNet* NetEBAdd::synthesize(Design*des)
string path = lsig->scope()->name()+"."+lsig->scope()->local_symbol();
NetNet*osig = new NetNet(lsig->scope(), path, NetNet::IMPLICIT, width);
+ osig->local_flag(true);
string oname = des->local_symbol(path);
NetAddSub *adder = new NetAddSub(lsig->scope(), oname, width);
@@ -587,6 +588,9 @@ NetNet* NetESignal::synthesize(Design*des)
/*
* $Log: expr_synth.cc,v $
+ * Revision 1.34 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.33 2002/05/26 01:39:02 steve
* Carry Verilog 2001 attributes with processes,
* all the way through to the ivl_target API.
View
@@ -124,6 +124,7 @@ ivl_signal_attr
ivl_signal_attr_cnt
ivl_signal_attr_val
ivl_signal_integer
+ivl_signal_local
ivl_signal_pin
ivl_signal_pins
ivl_signal_port
View
@@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: ivl_target.h,v 1.100 2002/06/21 04:59:35 steve Exp $"
+#ident "$Id: ivl_target.h,v 1.101 2002/07/05 21:26:17 steve Exp $"
#endif
#ifdef __cplusplus
@@ -891,6 +891,10 @@ extern const char* ivl_scope_tname(ivl_scope_t net);
* net or variable may be signed. This function returns true if the
* signal is signed.
*
+ * ivl_signal_local
+ * A signal that was generated by the compiler as a place holder is
+ * marked as local.
+ *
* ivl_signal_type
* Return the type of the signal, i.e., reg, wire, tri0, etc.
*
@@ -914,6 +918,7 @@ extern unsigned ivl_signal_pins(ivl_signal_t net);
extern ivl_signal_port_t ivl_signal_port(ivl_signal_t net);
extern int ivl_signal_signed(ivl_signal_t net);
extern int ivl_signal_integer(ivl_signal_t net);
+extern int ivl_signal_local(ivl_signal_t net);
extern ivl_signal_type_t ivl_signal_type(ivl_signal_t net);
extern const char* ivl_signal_name(ivl_signal_t net);
extern const char* ivl_signal_basename(ivl_signal_t net);
@@ -1051,6 +1056,9 @@ _END_DECL
/*
* $Log: ivl_target.h,v $
+ * Revision 1.101 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.100 2002/06/21 04:59:35 steve
* Carry integerness throughout the compilation.
*
View
@@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: t-dll-api.cc,v 1.82 2002/06/21 04:59:35 steve Exp $"
+#ident "$Id: t-dll-api.cc,v 1.83 2002/07/05 21:26:17 steve Exp $"
#endif
# include "config.h"
@@ -1194,6 +1194,11 @@ extern "C" ivl_signal_port_t ivl_signal_port(ivl_signal_t net)
return net->port_;
}
+extern "C" int ivl_signal_local(ivl_signal_t net)
+{
+ return net->local_;
+}
+
extern "C" int ivl_signal_signed(ivl_signal_t net)
{
return net->signed_;
@@ -1547,6 +1552,9 @@ extern "C" ivl_statement_t ivl_stmt_sub_stmt(ivl_statement_t net)
/*
* $Log: t-dll-api.cc,v $
+ * Revision 1.83 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.82 2002/06/21 04:59:35 steve
* Carry integerness throughout the compilation.
*
View
@@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: t-dll.cc,v 1.88 2002/06/25 01:33:22 steve Exp $"
+#ident "$Id: t-dll.cc,v 1.89 2002/07/05 21:26:17 steve Exp $"
#endif
# include "config.h"
@@ -1824,6 +1824,7 @@ void dll_target::signal(const NetNet*net)
obj->lsb_index = net->lsb();
obj->lsb_dist = net->msb() >= net->lsb() ? 1 : -1;
obj->isint_ = false;
+ obj->local_ = (net->local_flag() && (net->peek_eref() == 0))? 1 : 0;
switch (net->port_type()) {
@@ -1950,6 +1951,9 @@ extern const struct target tgt_dll = { "dll", &dll_target_obj };
/*
* $Log: t-dll.cc,v $
+ * Revision 1.89 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.88 2002/06/25 01:33:22 steve
* Cache calculated driven value.
*
View
@@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
-#ident "$Id: t-dll.h,v 1.86 2002/06/21 04:59:35 steve Exp $"
+#ident "$Id: t-dll.h,v 1.87 2002/07/05 21:26:17 steve Exp $"
#endif
# include "target.h"
@@ -504,6 +504,7 @@ struct ivl_signal_s {
unsigned width_ :24;
unsigned signed_ : 1;
unsigned isint_ : 1;
+ unsigned local_ : 1;
/* These encode the run-time index for the least significant
bit, and the distance to the second bit. */
@@ -610,6 +611,9 @@ struct ivl_statement_s {
/*
* $Log: t-dll.h,v $
+ * Revision 1.87 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.86 2002/06/21 04:59:35 steve
* Carry integerness throughout the compilation.
*
View
@@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT)
-#ident "$Id: vvp_scope.c,v 1.71 2002/06/21 04:59:35 steve Exp $"
+#ident "$Id: vvp_scope.c,v 1.72 2002/07/05 21:26:17 steve Exp $"
#endif
# include "vvp_priv.h"
@@ -549,6 +549,10 @@ static void draw_net_in_scope(ivl_signal_t sig)
const char*signed_flag = ivl_signal_signed(sig)? "/s" : "";
+ /* Skip the local signal. */
+ if (ivl_signal_local(sig))
+ return;
+
args = (const_charp*)calloc(ivl_signal_pins(sig), sizeof(char*));
/* Connect all the pins of the signal to something. */
@@ -1573,6 +1577,9 @@ int draw_scope(ivl_scope_t net, ivl_scope_t parent)
/*
* $Log: vvp_scope.c,v $
+ * Revision 1.72 2002/07/05 21:26:17 steve
+ * Avoid emitting to vvp local net symbols.
+ *
* Revision 1.71 2002/06/21 04:59:35 steve
* Carry integerness throughout the compilation.
*

0 comments on commit 301040a

Please sign in to comment.