From a4d8c61ef9a9744632b9ea98c6d7c8fcf82a6363 Mon Sep 17 00:00:00 2001 From: Stephen Williams Date: Wed, 26 Aug 2009 21:51:18 -0700 Subject: [PATCH] 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. --- vvp/vvp_net_sig.cc | 88 ++++------------------------------------------ vvp/vvp_net_sig.h | 31 ---------------- 2 files changed, 6 insertions(+), 113 deletions(-) diff --git a/vvp/vvp_net_sig.cc b/vvp/vvp_net_sig.cc index 0db813ef4..8da513bd0 100644 --- a/vvp/vvp_net_sig.cc +++ b/vvp/vvp_net_sig.cc @@ -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 (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 (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 { diff --git a/vvp/vvp_net_sig.h b/vvp/vvp_net_sig.h index a00aa15b1..84e502683 100644 --- a/vvp/vvp_net_sig.h +++ b/vvp/vvp_net_sig.h @@ -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_; }; /*