Remove dead filter code from functors.

All the filtering and forcing is now done in wire filters, so the
last vestiges of force/filter support in th variable functors can
be removed.
This commit is contained in:
Stephen Williams 2009-08-26 21:51:18 -07:00
parent 0705717efa
commit a4d8c61ef9
2 changed files with 6 additions and 113 deletions

View File

@ -75,26 +75,6 @@ double vvp_signal_value::real_value() const
return 0;
}
unsigned vvp_fun_signal_real::filter_size() const
{
return size();
}
unsigned vvp_fun_signal4::filter_size() const
{
return value_size();
}
void vvp_fun_signal4::force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask)
{
assert(0);
}
void vvp_fun_signal4::force_fil_real(double val, vvp_vector2_t mask)
{
assert(0);
}
void vvp_net_t::force_vec4(const vvp_vector4_t&val, vvp_vector2_t mask)
{
assert(fil);
@ -102,70 +82,18 @@ void vvp_net_t::force_vec4(const vvp_vector4_t&val, vvp_vector2_t mask)
vvp_send_vec4(out_, val, 0);
}
void vvp_fun_signal8::force_fil_vec4(const vvp_vector4_t&val, vvp_vector2_t mask)
{
assert(0 /* XXXX force_fil_vec8(vvp_vector8_t(val,6,6), mask); */);
}
void vvp_fun_signal8::force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask)
{
assert(0);
#if 0
force_mask(mask);
if (force8_.size() == 0)
force8_ = val;
for (unsigned idx = 0; idx < mask.size() ; idx += 1) {
if (mask.value(idx) == 0)
continue;
force8_.set_bit(idx, val.value(idx));
}
#endif
}
void vvp_fun_signal8::force_fil_real(double val, vvp_vector2_t mask)
{
assert(0);
}
void vvp_net_t::force_vec8(const vvp_vector8_t&val, vvp_vector2_t mask)
{
vvp_fun_signal8*sig = dynamic_cast<vvp_fun_signal8*> (fil);
assert(sig);
sig->force_fil_vec8(val, mask);
send_vec8(val);
}
void vvp_fun_signal_real::force_fil_vec4(const vvp_vector4_t&val, vvp_vector2_t mask)
{
assert(0);
}
void vvp_fun_signal_real::force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask)
{
assert(0);
}
void vvp_fun_signal_real::force_fil_real(double val, vvp_vector2_t mask)
{
#if 0
force_mask(mask);
force_real_ = val;
#else
assert(0);
#endif
assert(fil);
fil->force_fil_vec8(val, mask);
vvp_send_vec8(out_, val);
}
void vvp_net_t::force_real(double val, vvp_vector2_t mask)
{
vvp_fun_signal_real*sig = dynamic_cast<vvp_fun_signal_real*> (fil);
assert(sig);
sig->force_fil_real(val, mask);
send_real(val, 0);
assert(fil);
fil->force_fil_real(val, mask);
vvp_send_real(out_, val, 0);
}
/* **** vvp_fun_signal methods **** */
@ -588,10 +516,6 @@ void vvp_fun_signal8::release_pv(vvp_net_ptr_t ptr, bool net,
}
}
#endif
unsigned vvp_fun_signal8::filter_size() const
{
return value_size();
}
unsigned vvp_fun_signal8::value_size() const
{

View File

@ -122,15 +122,6 @@ class vvp_fun_signal4 : public vvp_fun_signal_vec {
void get_value(struct t_vpi_value*value);
public:
// Enable filter force.
void force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask);
void force_fil_real(double val, vvp_vector2_t mask);
// Test the value against the filter.
unsigned filter_size() const;
private:
};
/*
@ -236,18 +227,8 @@ class vvp_fun_signal8 : public vvp_fun_signal_vec {
void get_value(struct t_vpi_value*value);
public:
// Enable filter force.
void force_fil_vec4(const vvp_vector4_t&val, vvp_vector2_t mask);
void force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask);
void force_fil_real(double val, vvp_vector2_t mask);
// Test the value against the filter.
unsigned filter_size() const;
private:
vvp_vector8_t bits8_;
vvp_vector8_t force8_;
};
class vvp_fun_signal_real : public vvp_fun_signal_base {
@ -259,18 +240,7 @@ class vvp_fun_signal_real : public vvp_fun_signal_base {
virtual double real_value() const = 0;
void get_value(struct t_vpi_value*value);
public:
// Enable filter force.
void force_fil_vec4(const vvp_vector4_t&val, vvp_vector2_t mask);
void force_fil_vec8(const vvp_vector8_t&val, vvp_vector2_t mask);
void force_fil_real(double val, vvp_vector2_t mask);
unsigned size() const { return 1; }
virtual unsigned filter_size() const;
private:
double force_real_;
};
/*
@ -294,7 +264,6 @@ class vvp_fun_signal_real_sa : public vvp_fun_signal_real {
private:
double bits_;
double force_;
};
/*