Avoid emitting to vvp local net symbols.

This commit is contained in:
steve 2002-07-05 21:26:17 +00:00
parent 54b96ea7bd
commit 301040a67a
8 changed files with 47 additions and 7 deletions

View File

@ -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 File

@ -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 File

@ -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 File

@ -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 File

@ -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 File

@ -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 File

@ -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 File

@ -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.
*