<?xml version="1.0"?><!-- generator="bbPress" -->

<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
>

<channel>
<title>Trusster Forums &#187; Recent Posts</title>
<link>http://forums.trusster.com/</link>
<description>Trusster Forums &#187; Recent Posts</description>
<language>en</language>
<pubDate>Fri, 30 Jul 2010 14:51:39 +0000</pubDate>

<item>
<title>germanattanasio on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-42</link>
<pubDate>Sun, 18 Jul 2010 20:30:17 +0000</pubDate>
<dc:creator>germanattanasio</dc:creator>
<guid isPermaLink="false">42@http://forums.trusster.com/</guid>
<description>&#60;p&#62;In order to fix &#34;should have been declared inside ‘teal’&#34; on Ubuntu.&#60;br /&#62;
I had to:&#60;br /&#62;
  0. Checkout the code from subversion repositories.&#60;br /&#62;
  1. Install gcc-4.1 and g++-4.1 from Synaptic.&#60;br /&#62;
  2. change &#60;code&#62;SYS_ARCH_CC&#60;/code&#62; to use gcc-4.1.&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#34; rel=&#34;nofollow&#34;&#62;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#60;/a&#62;
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-41</link>
<pubDate>Mon, 28 Jun 2010 14:52:37 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">41@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;There are actually two patches:&#60;/p&#62;
&#60;p&#62;*** teal_reg.h.new	2010-06-28 14:47:39.000000000 -0400&#60;br /&#62;
--- teal_reg.h	2006-05-18 08:34:00.000000000 -0400&#60;br /&#62;
*************** EVEN IF ADVISED OF THE POSSIBILITY OF SU&#60;br /&#62;
*** 110,117 ****&#60;br /&#62;
      char to_int (uint32 b) const;    //extract one bit (WARNING: Drops X/Z, see operator(uint32))&#60;/p&#62;
&#60;p&#62;      //logic&#60;br /&#62;
!     friend four_state ::teal::triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
!     friend bool ::teal::operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
      friend four_state operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;br /&#62;
      friend four_state reduce_xor (const reg&#38;amp;);&#60;/p&#62;
&#60;p&#62;--- 110,117 ----&#60;br /&#62;
      char to_int (uint32 b) const;    //extract one bit (WARNING: Drops X/Z, see operator(uint32))&#60;/p&#62;
&#60;p&#62;      //logic&#60;br /&#62;
!     friend four_state triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
!     friend bool operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
      friend four_state operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;br /&#62;
      friend four_state reduce_xor (const reg&#38;amp;);&#60;/p&#62;
&#60;p&#62;*************** EVEN IF ADVISED OF THE POSSIBILITY OF SU&#60;br /&#62;
*** 284,290 ****&#60;br /&#62;
      friend vout&#38;amp; operator&#38;lt;&#38;lt; (vout&#38;amp;, const vreg&#38;amp;);&#60;br /&#62;
    };&#60;br /&#62;
    vout&#38;amp; operator&#38;lt;&#38;lt; (vout&#38;amp;, const vreg&#38;amp;);&#60;br /&#62;
-&#60;br /&#62;
- reg::four_state triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
- bool operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
- reg::four_state operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;br /&#62;
--- 284,286 ----&#60;/p&#62;
&#60;p&#62;-and -&#60;br /&#62;
*** teal_vreg.cpp.new	2010-06-28 14:45:41.000000000 -0400&#60;br /&#62;
--- teal_vreg.cpp	2010-06-28 14:45:28.000000000 -0400&#60;br /&#62;
*************** void teal::vreg::connect_ () {&#60;br /&#62;
*** 143,149 ****&#60;/p&#62;
&#60;p&#62;  #if defined (vpi_2_0)&#60;br /&#62;
    if (! handle_) {&#60;br /&#62;
!     local_log &#38;lt;&#38;lt; teal_error &#38;lt;&#38;lt; &#34;Unable to get handle for \&#34;&#34; &#38;lt;&#38;lt; path_and_name_ &#38;lt;&#38;lt; &#34;\&#34; size:&#34; &#38;lt;&#38;lt; (int)path_and_name_.size () &#38;lt;&#38;lt; endm;&#60;br /&#62;
      vpi_control (vpiFinish);&#60;br /&#62;
    }&#60;/p&#62;
&#60;p&#62;--- 143,149 ----&#60;/p&#62;
&#60;p&#62;  #if defined (vpi_2_0)&#60;br /&#62;
    if (! handle_) {&#60;br /&#62;
!     local_log &#38;lt;&#38;lt; teal_error &#38;lt;&#38;lt; &#34;Unable to get handle for \&#34;&#34; &#38;lt;&#38;lt; path_and_name_ &#38;lt;&#38;lt; &#34;\&#34; size:&#34; &#38;lt;&#38;lt; path_and_name_.size () &#38;lt;&#38;lt; endm;&#60;br /&#62;
      vpi_control (vpiFinish);&#60;br /&#62;
    }
&#60;/p&#62;</description>
</item>
<item>
<title>shakthimaan on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-40</link>
<pubDate>Mon, 28 Jun 2010 11:25:57 +0000</pubDate>
<dc:creator>shakthimaan</dc:creator>
<guid isPermaLink="false">40@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Can you please let me know line 309 in which file? In teal_reg.cpp line 309 contains:&#60;/p&#62;
&#60;p&#62;  //now clean off any whole word parts, I am zero above assignment&#60;br /&#62;
  if (i &#38;lt; word_length_) {&#60;br /&#62;
    //work to do&#60;br /&#62;
    for (; i &#38;lt; word_length_; i++) {&#60;br /&#62;
      //  std::cout &#38;lt;&#38;lt; &#34;teal::reg::operator=() clearing word =&#34; &#38;lt;&#38;lt; i &#38;lt;&#38;lt; std::endl;&#60;br /&#62;
      teal_acc_vecval_[i].aval = 0;&#60;br /&#62;
      teal_acc_vecval_[i].bval = 0;&#60;br /&#62;
    }&#60;br /&#62;
  }&#60;/p&#62;
&#60;p&#62;In teal_reg.h the last line is only 286. If you could create a patch, with the required changes it will be easy to follow than replying with snippets. This is also the reason why I like mailing lists for easier discussions and follow-up. I am using teal_1_40b.tar.gz. Thanks!
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-39</link>
<pubDate>Thu, 24 Jun 2010 16:06:38 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">39@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;Humm, can I believe some revs of gcc want the declaration also in the teal scope.  Can you add the following starting at line 309?&#60;/p&#62;
&#60;p&#62;reg::four_state triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
bool operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
reg::four_state operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs);  &#60;/p&#62;
&#60;p&#62;Sorry about this.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
mike
&#60;/p&#62;</description>
</item>
<item>
<title>shakthimaan on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-38</link>
<pubDate>Thu, 24 Jun 2010 12:29:15 +0000</pubDate>
<dc:creator>shakthimaan</dc:creator>
<guid isPermaLink="false">38@http://forums.trusster.com/</guid>
<description>&#60;p&#62;I have the following in teal_reg.h and I still get the same error:&#60;/p&#62;
&#60;p&#62;//logic&#60;br /&#62;
friend four_state ::teal::triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
friend bool ::teal::operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
friend four_state ::teal::operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;br /&#62;
friend four_state reduce_xor (const reg&#38;amp;);&#60;/p&#62;
&#60;p&#62;./teal_reg.cpp:391: error: ‘bool teal::operator==(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’&#60;br /&#62;
./teal_reg.cpp:398: error: ‘teal::reg::four_state teal::triple_equal(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’&#60;br /&#62;
./teal_reg.cpp:428: error: ‘teal::reg::four_state teal::operator&#38;lt;(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’
&#60;/p&#62;</description>
</item>
<item>
<title>admin on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-37</link>
<pubDate>Thu, 24 Jun 2010 11:47:39 +0000</pubDate>
<dc:creator>admin</dc:creator>
<guid isPermaLink="false">37@http://forums.trusster.com/</guid>
<description>&#60;p&#62;There's an article on the site describing how to get read-only access to the SVN repository. It can be found at &#60;a href=&#34;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#34; rel=&#34;nofollow&#34;&#62;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#60;/a&#62;  . If you have trouble, let me or Mike know.
&#60;/p&#62;</description>
</item>
<item>
<title>admin on "Mailing list"</title>
<link>http://forums.trusster.com/topic/mailing-list#post-36</link>
<pubDate>Thu, 24 Jun 2010 11:47:12 +0000</pubDate>
<dc:creator>admin</dc:creator>
<guid isPermaLink="false">36@http://forums.trusster.com/</guid>
<description>&#60;p&#62;There's an article on the site describing how to get read-only access to the SVN repository. It can be found at &#60;a href=&#34;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#34; rel=&#34;nofollow&#34;&#62;http://www.trusster.com/truss/howto-configure-svn-for-read-only-access/&#60;/a&#62; . If you have trouble, let me or Mike know.
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Mailing list"</title>
<link>http://forums.trusster.com/topic/mailing-list#post-35</link>
<pubDate>Wed, 23 Jun 2010 09:52:43 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">35@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;Great idea !  I will ask my IT person to do that.&#60;/p&#62;
&#60;p&#62;Can you ping me privately mike &#38;gt;&#38;lt; trusster &#38;gt;&#38;lt; com ? That way, we can send you the svn key.&#60;/p&#62;
&#60;p&#62;Take care,&#60;br /&#62;
Mike
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-34</link>
<pubDate>Wed, 23 Jun 2010 09:51:08 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">34@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;start at line 117. &#60;/p&#62;
&#60;p&#62;Alternatively you could search for triple_equal&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
Mike
&#60;/p&#62;</description>
</item>
<item>
<title>shakthimaan on "Mailing list"</title>
<link>http://forums.trusster.com/topic/mailing-list#post-33</link>
<pubDate>Tue, 22 Jun 2010 06:44:47 +0000</pubDate>
<dc:creator>shakthimaan</dc:creator>
<guid isPermaLink="false">33@http://forums.trusster.com/</guid>
<description>&#60;p&#62;I am trying to package Teal for Fedora.&#60;/p&#62;
&#60;p&#62;1. Can you please create a mailing list for discussions, and submission of patches?&#60;/p&#62;
&#60;p&#62;2. If you could also remove the login requirement, and provide an RSS feed for source code, it will be very helpful to keep track of new releases!&#60;/p&#62;
&#60;p&#62;Thanks!
&#60;/p&#62;</description>
</item>
<item>
<title>shakthimaan on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-32</link>
<pubDate>Tue, 22 Jun 2010 06:26:16 +0000</pubDate>
<dc:creator>shakthimaan</dc:creator>
<guid isPermaLink="false">32@http://forums.trusster.com/</guid>
<description>&#60;p&#62;I am now using teal_1_40b with gcc 4.4.4 on Fedora 13. Where should I include the following?&#60;/p&#62;
&#60;p&#62;Anyway, to fix it, add the global scope resolution operator on the function names:&#60;br /&#62;
&#60;pre&#62;&#60;code&#62;friend four_state ::teal::triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);
friend bool ::teal::operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);
friend four_state ::teal::operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;/code&#62;&#60;/pre&#62;</description>
</item>
<item>
<title>Mike Mintz on "Active HDL (Windows)"</title>
<link>http://forums.trusster.com/topic/active-hdl-windows#post-31</link>
<pubDate>Tue, 04 May 2010 08:33:20 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">31@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Rolf,&#60;/p&#62;
&#60;p&#62;Thanks for trying Teal/Truss and working on these run time issues.  Yeah the synch and mutex code is just ugly.&#60;/p&#62;
&#60;p&#62;I have good contacts at Aldec and will get them to try teal on windows. I know they use teal on Linux in their regression suite.&#60;/p&#62;
&#60;p&#62;If you can get me a stack dump of the crash I will take a look.  &#60;/p&#62;
&#60;p&#62;As for truss, can you get me the error from the compiler. I agree that I made a bad assumption that pthread_t was an integral type.  You can see in the run_loop class (just below the thread class in truss_thread.h) that I use a bool to track the state.  &#60;/p&#62;
&#60;p&#62;As for the redundant code in stop(), the idea it to protect if you call stop() again. pthread does not handle a second cancel or join very well.&#60;/p&#62;
&#60;p&#62;Aldec is a proper simulator.&#60;/p&#62;
&#60;p&#62;It seem to me you are following the code quite well !  I have been coding c++ for 20 years now and would not consider myself an expert.&#60;/p&#62;
&#60;p&#62;I will get back to you when I hear from aldec.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
mike
&#60;/p&#62;</description>
</item>
<item>
<title>shimrod on "Active HDL (Windows)"</title>
<link>http://forums.trusster.com/topic/active-hdl-windows#post-30</link>
<pubDate>Tue, 04 May 2010 05:10:34 +0000</pubDate>
<dc:creator>shimrod</dc:creator>
<guid isPermaLink="false">30@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi &#60;/p&#62;
&#60;p&#62;Im trying to get teal (1.40b) and Truss to work with Active HDL 8.2 under windows XP, with pthreads.2 and the mingw gcc compiler that comes with the simulator.&#60;br /&#62;
I have managed to compile teal (PLI 1) and some of the tests passes. However the mutex_test crashes the simulator. I tried to play with the number of threads and up to 4 works. When I change the no of iterations to 1 I can create many (250) threads. So it seems to me that something with the mutex fails. &#60;/p&#62;
&#60;p&#62;Regarding Truss, I can't compile since the different implementation of pthread_t.&#60;br /&#62;
Truss seems to rely on the id being 0 after thread cancelled?&#60;br /&#62;
Also this seems redundant since teal::stop_Thread is calling both ptrhead_cancel and pthread_join.&#60;/p&#62;
&#60;p&#62;Anyone who has some ideas? Or should I give up and move to linux and a proper simulator?&#60;/p&#62;
&#60;p&#62;Im not an C++ (or C) expert and the code is quite complex to follow.&#60;/p&#62;
&#60;p&#62;Thanks and best regards&#60;br /&#62;
Rolf
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-29</link>
<pubDate>Wed, 28 Apr 2010 10:24:17 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">29@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Dave,&#60;/p&#62;
&#60;p&#62;I think it's this line:&#60;br /&#62;
    local_log &#38;lt;&#38;lt; teal_error &#38;lt;&#38;lt; &#34;Unable to get handle for \&#34;&#34; &#38;lt;&#38;lt; path_and_name_ &#38;lt;&#38;lt; &#34;\&#34; size:&#34; &#38;lt;&#38;lt; (unsigned)path_and_name_.size () &#38;lt;&#38;lt; endm;&#60;/p&#62;
&#60;p&#62;If so that would be my stupid hack to get 32 bit working with .size().&#60;/p&#62;
&#60;p&#62;Just remove the (unsigned) cast.&#60;/p&#62;
&#60;p&#62;I am happy that you are finding the book useful.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
mike&#60;/p&#62;
&#60;p&#62;-- The details --&#60;br /&#62;
The issue is that I did not do a signed uint64 operator&#38;lt;&#38;lt; for teal_vout.  You can change the size_t operator&#38;lt;&#38;lt;() to be the correct form:&#60;/p&#62;
&#60;p&#62;    virtual vout&#38;amp; operator&#38;lt;&#38;lt; (long long int x) {return operator&#38;lt;&#38;lt; ( (unsigned long long) x);}&#60;/p&#62;
&#60;p&#62;Sorry about that.
&#60;/p&#62;</description>
</item>
<item>
<title>daveW on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-28</link>
<pubDate>Tue, 27 Apr 2010 20:30:46 +0000</pubDate>
<dc:creator>daveW</dc:creator>
<guid isPermaLink="false">28@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Robert&#60;/p&#62;
&#60;p&#62;I hacked on this some the other night and boiled it down to line 150 (or within a few lines) in 'teal_vreg.cpp'.  Seems to be a problem with the call to 'path_and_name_.size ()'.  When commenting this out, I can successfully build the library.   &#60;/p&#62;
&#60;p&#62;Hey, I'm enjoying your book - HW verification with C++.&#60;br /&#62;
You guys are trailblazers.&#60;/p&#62;
&#60;p&#62;Dave
&#60;/p&#62;</description>
</item>
<item>
<title>daveW on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-27</link>
<pubDate>Mon, 26 Apr 2010 13:46:41 +0000</pubDate>
<dc:creator>daveW</dc:creator>
<guid isPermaLink="false">27@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Robert&#60;/p&#62;
&#60;p&#62;OK - that should work.  Again the error appears to be related to one file - 'teal_vreg.cpp'.  Remove this file in the 'makefile' and it builds successfully.&#60;br /&#62;
Thank you for your quick response. &#60;/p&#62;
&#60;p&#62;Dave
&#60;/p&#62;</description>
</item>
<item>
<title>Robert Ekendahl on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-26</link>
<pubDate>Mon, 26 Apr 2010 12:03:35 +0000</pubDate>
<dc:creator>Robert Ekendahl</dc:creator>
<guid isPermaLink="false">26@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Dave,&#60;/p&#62;
&#60;p&#62;Mike's on vacation and I must confess I don't have teal for c++ running currently  on any of my computers. I'm sure Mike will be able to help you as soon as he gets back later this week.&#60;/p&#62;
&#60;p&#62;/Robert
&#60;/p&#62;</description>
</item>
<item>
<title>daveW on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-25</link>
<pubDate>Mon, 26 Apr 2010 11:54:23 +0000</pubDate>
<dc:creator>daveW</dc:creator>
<guid isPermaLink="false">25@http://forums.trusster.com/</guid>
<description>&#60;p&#62;All&#60;/p&#62;
&#60;p&#62;I'm having one file fail on a Teal build on SUSE 10.2 with gcc 4.1.2.  The build will work if I remove 'teal_vreg.cpp'. &#60;/p&#62;
&#60;p&#62;Here is some of the error message...using 'make -d'.  It is ugly.. and I'm seeking some help.&#60;/p&#62;
&#60;p&#62;:char_traits&#38;lt;char&#38;gt;, _Alloc = std::allocator&#38;lt;char&#38;gt;]()’&#60;br /&#62;
./teal_vout.h:131: note: candidates are: virtual teal::vout&#38;amp;teal::vout::operator&#38;lt;&#38;lt;(char)&#60;br /&#62;
./teal_vout.h:132: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(int)&#60;br /&#62;
./teal_vout.h:133: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(unsigned int)&#60;br /&#62;
./teal_vout.h:134: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(long int)&#60;br /&#62;
./teal_vout.h:135: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(long long unsigned int)&#60;br /&#62;
./teal_vout.h:136: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(const std::string&#38;amp;) &#38;lt;near match&#38;gt;&#60;br /&#62;
./teal_vout.h:137: note:     virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(double)&#60;br /&#62;
./teal_vout.h:159: note:     teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(teal::vout&#38;amp; (*)(teal::vout&#38;amp;)) &#38;lt;near match&#38;gt;&#60;br /&#62;
./teal_reg.h:191: note:   teal::vout&#38;amp; teal::operator&#38;lt;&#38;lt;(teal::vout&#38;amp;, teal::reg::four_state) &#38;lt;near match&#38;gt;&#60;br /&#62;
./teal_reg.h:188: note:   teal::vout&#38;amp; teal::operator&#38;lt;&#38;lt;(teal::vout&#38;amp;, const teal::reg&#38;amp;)&#60;br /&#62;
Reaping losing child 0x0064c140 PID 5951&#60;br /&#62;
make: *** [teal_vreg.o] Error 1&#60;br /&#62;
Removing child 0x0064c140 PID 5951 from chain.&#60;/p&#62;
&#60;p&#62;This is using a recent 1_40b Teal archive.  Scope resolution (&#34;teal:: &#34;) looks to be in place.&#60;/p&#62;
&#60;p&#62;cheers,&#60;/p&#62;
&#60;p&#62;Dave
&#60;/p&#62;</description>
</item>
<item>
<title>flyfishr64 on "Can&#039;t get back to main site from forum"</title>
<link>http://forums.trusster.com/topic/cant-get-back-to-main-site-from-forum#post-24</link>
<pubDate>Wed, 17 Mar 2010 16:09:38 +0000</pubDate>
<dc:creator>flyfishr64</dc:creator>
<guid isPermaLink="false">24@http://forums.trusster.com/</guid>
<description>&#60;p&#62;I second the motion!
&#60;/p&#62;</description>
</item>
<item>
<title>admin on "Can&#039;t get back to main site from forum"</title>
<link>http://forums.trusster.com/topic/cant-get-back-to-main-site-from-forum#post-23</link>
<pubDate>Wed, 17 Mar 2010 15:30:32 +0000</pubDate>
<dc:creator>admin</dc:creator>
<guid isPermaLink="false">23@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hey guys, can you add a link back to the main site from the forums?
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "error while compiling teal in icarus verilog"</title>
<link>http://forums.trusster.com/topic/error-while-compiling-teal-in-icarus-verilog#post-22</link>
<pubDate>Wed, 17 Mar 2010 15:06:44 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">22@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi amitbaran,&#60;/p&#62;
&#60;p&#62;Sorry for the long delay. Our notification system is broken.&#60;/p&#62;
&#60;p&#62;Can I see what command you used? It looks like the make in teal did not complete.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
mike
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Crash: Ubuntu/Icarus/GCC ?"</title>
<link>http://forums.trusster.com/topic/crash-ubuntuicarusgcc#post-21</link>
<pubDate>Wed, 17 Mar 2010 15:00:37 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">21@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Steven,&#60;/p&#62;
&#60;p&#62;Can you try running under gdb ?&#60;/p&#62;
&#60;p&#62;Another possibility is to try without the $verification_top() call.&#60;/p&#62;
&#60;p&#62;Finally, try dropping to the simpler teal tests.&#60;/p&#62;
&#60;p&#62;Sorry I could not be more useful.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
Mike
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-20</link>
<pubDate>Wed, 17 Mar 2010 14:56:45 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">20@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;Sorry for the delay in a response. Our notification system is broken.&#60;/p&#62;
&#60;p&#62;I have seen this error &#34;should have been declared inside ‘teal’&#34;. It has to do with the newer gcc.  I actually think its a bug, because its not overleading the scope correctly.&#60;/p&#62;
&#60;p&#62;Anyway, to fix it, add the global scope resolution operator on the function names:&#60;br /&#62;
    friend four_state ::teal::triple_equal (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
    friend bool ::teal::operator== (const reg&#38;amp; lhs, const reg&#38;amp; rhs);&#60;br /&#62;
    friend four_state ::teal::operator&#38;lt; (const reg&#38;amp; lhs, const reg&#38;amp; rhs); //Should be bool?&#60;/p&#62;
&#60;p&#62;Take care,&#60;br /&#62;
Mike
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "error while compiling teal"</title>
<link>http://forums.trusster.com/topic/error-while-compiling-teal#post-19</link>
<pubDate>Wed, 17 Mar 2010 14:48:04 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">19@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;Sorry for the delay in responding. &#60;/p&#62;
&#60;p&#62;Since teal_memory.cpp:95 and 364 are just a log lines, you can comment them out.&#60;/p&#62;
&#60;p&#62;Feel free to e-mail me directly at mike &#38;lt;&#38;gt; trusster &#38;lt;&#38;gt; com&#60;/p&#62;
&#60;p&#62;Again, I apologize for the delay.&#60;/p&#62;
&#60;p&#62;take Care,&#60;br /&#62;
mike
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "Building shared libary"</title>
<link>http://forums.trusster.com/topic/building-shared-libary#post-18</link>
<pubDate>Wed, 17 Mar 2010 14:42:39 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">18@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi digimike10,&#60;/p&#62;
&#60;p&#62;So sorry for the delay. The &#34;automatic ping&#34; system seems to be broken. &#60;/p&#62;
&#60;p&#62;In order to respond, I need more of the log file.&#60;/p&#62;
&#60;p&#62;You command seems fine.&#60;/p&#62;
&#60;p&#62;Take Care,&#60;br /&#62;
Mike&#60;br /&#62;
mike &#38;lt;&#38;gt; trusster &#38;lt;&#38;gt; com
&#60;/p&#62;</description>
</item>
<item>
<title>Mike Mintz on "error occurs when running Teal sv in Questasim6.5c"</title>
<link>http://forums.trusster.com/topic/error-occurs-when-running-teal-sv-in-questasim65c#post-17</link>
<pubDate>Thu, 18 Feb 2010 11:34:22 +0000</pubDate>
<dc:creator>Mike Mintz</dc:creator>
<guid isPermaLink="false">17@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Desperado,&#60;/p&#62;
&#60;p&#62;(Are you the same Desperado as on the Verification Guild?)&#60;/p&#62;
&#60;p&#62;Sorry for the delay in responding. Our normal notification system failed.&#60;/p&#62;
&#60;p&#62;SV certainly has the *required* features to allow verification to&#60;br /&#62;
succeed. It's just not good at encouraging good programming practices&#60;br /&#62;
and has lots of &#34;sharp corners&#34; in its language definition.&#60;/p&#62;
&#60;p&#62;By far, the primary wart on the SV language is the difficulty in&#60;br /&#62;
separation of interface versus implementation. This is a staple of&#60;br /&#62;
good languages since the 1970s. You can separate *most* symbols (data,&#60;br /&#62;
methods, classes), but it requires significant work on the coders&#60;br /&#62;
part. There are tons of glitches in this process like the poor&#60;br /&#62;
definition of a forwarded class type, how prototypes can vary between&#60;br /&#62;
declaration and definition, and the initialization of statics.&#60;/p&#62;
&#60;p&#62;A second major flaw is that SV is derived from Verilog. This brings a&#60;br /&#62;
host of issues and encumbrances, but the main one is that Verilog is&#60;br /&#62;
designed to build real physical entities. The ways that that warps a&#60;br /&#62;
language design are numerous. Just look at compilation versus&#60;br /&#62;
elaboration and what are the scope resolution rules for a.b .  Now C++&#60;br /&#62;
is weaker in some regards, such as threading, 4/8 state computations&#60;br /&#62;
and connection to the DUT, but these can be overcome with relative&#60;br /&#62;
ease (i.e. Teal).&#60;/p&#62;
&#60;p&#62;A third major flaw is that it does not integrate well with c and&#60;br /&#62;
c++. These are the two primary languages of software.  Yes, I know&#60;br /&#62;
about DPI and PLI, they are quite weak for real model integration.&#60;/p&#62;
&#60;p&#62;Here's a partial list of lesser flaws. I am just rattling them off in&#60;br /&#62;
no particular order.&#60;/p&#62;
&#60;p&#62;C++ has the std namespace and the template library. This alone is a&#60;br /&#62;
major piece of good work and provides a good base for both novice and&#60;br /&#62;
expert programmers.  Many books have been written on the Template&#60;br /&#62;
Library and much though has gone into those templates/algorithms. I&#60;br /&#62;
know and have used all of SVs container classes, but they are a weak&#60;br /&#62;
shadow of the template library.&#60;/p&#62;
&#60;p&#62;Packages versus namespaces: There are two major faults. The first is&#60;br /&#62;
that when you end a package, all the methods and classes must be fully&#60;br /&#62;
defined. This breaks the separation of interface and implementation.&#60;br /&#62;
Add to that the fact that the parser and language definition are weak&#60;br /&#62;
and you end up with files like teal_vout_pre and teal_vout_post.&#60;br /&#62;
Another fault is that the package cannot be added to in another file.&#60;br /&#62;
This may seem silly, but I do not want everything associated with a&#60;br /&#62;
specific functional area to be in one file. How would users add they&#60;br /&#62;
own derivations and have them look like there are &#34;inside&#34; the package&#60;br /&#62;
?&#60;/p&#62;
&#60;p&#62;A small nit is the fact that a function cannot take time. Either that&#60;br /&#62;
or methods should be allowed to return a value.&#60;/p&#62;
&#60;p&#62;C++ has automatic construction and destruction. This is of great use&#60;br /&#62;
for managing entry/exit tasks, such a mutex sentries, scratch RAM&#60;br /&#62;
allocation, and resource reservation.  It is invaluable in these&#60;br /&#62;
situations within a function with many return points.  Now I realize&#60;br /&#62;
SV has pointer management, but (1) this can be added to C++ easily&#60;br /&#62;
using smart pointers, (2) is often not really an issue and (3) causes&#60;br /&#62;
great confusion as to when to new and when to copy. The fact that the&#60;br /&#62;
language does not support a copy constructor leaves us to write error&#60;br /&#62;
prone and clumsy code (with down casts).&#60;/p&#62;
&#60;p&#62;C++ is known by millions of programmers and hundreds of books are&#60;br /&#62;
available. SV has maybe 20 thousand programmers and a handful of&#60;br /&#62;
books.&#60;/p&#62;
&#60;p&#62;The inheritance model if SV is very weak. It does not support&#60;br /&#62;
protected or private inheritance or multiple inheritance. It's model&#60;br /&#62;
of function resolution follows the pointer type which is just wrong.&#60;/p&#62;
&#60;p&#62;Parametrization versus templating: There is only a superficial&#60;br /&#62;
comparison and SV has not real facility for meta-programming&#60;br /&#62;
(templating).  Good templating is critical to the design of good&#60;br /&#62;
container classes and generic algorithms. We do a lot of similar&#60;br /&#62;
things in verification, it's real hard to express this commonality.&#60;br /&#62;
Now I realize this is used in perhaps only 1% of your code (with the&#60;br /&#62;
major exception of container classes and algorithms)&#60;/p&#62;
&#60;p&#62;parameters in SV versus constants in c++: Just looking at the ability&#60;br /&#62;
one has to specify constants for reusable code, SV is weak. There is&#60;br /&#62;
still discussion as to whether there can be global parameters. The&#60;br /&#62;
initialization of parameters is very weak compared to c++. Finally the&#60;br /&#62;
type checking in parameters is weak.&#60;/p&#62;
&#60;p&#62;bind versus operator overloading: As far as I know, no vendor has&#60;br /&#62;
implemented bin for the purpose of overloading mathematical operators.&#60;/p&#62;
&#60;p&#62;Sorry this post was so long; I just got going.&#60;/p&#62;
&#60;p&#62;To me SV is like playing a concert on a toy piano. Sure you can try,&#60;br /&#62;
but your range, sound and general talent is limited to, well playing&#60;br /&#62;
like a child.
&#60;/p&#62;</description>
</item>
<item>
<title>desperadoo on "error occurs when running Teal sv in Questasim6.5c"</title>
<link>http://forums.trusster.com/topic/error-occurs-when-running-teal-sv-in-questasim65c#post-16</link>
<pubDate>Mon, 08 Feb 2010 06:45:51 +0000</pubDate>
<dc:creator>desperadoo</dc:creator>
<guid isPermaLink="false">16@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi All,&#60;/p&#62;
&#60;p&#62;Robert Ekendahl Wrote:&#60;/p&#62;
&#60;p&#62;&#34;&#34;This is why I think our C++ solutions is far superior. You get a mature language with tons of more features then SV and you don't have to go through all of these hoops to make it work across simulators.&#34;&#34;&#60;/p&#62;
&#60;p&#62;Hi Robert, can you name a few features as you say, c++ has rich features than SV,,,,??&#60;/p&#62;
&#60;p&#62;As SV language supports all what available to verify an RTL design, what extra do you require to verify the RTL design!!!&#60;/p&#62;
&#60;p&#62;Can you suggest some few major feature which you C++ solutions provide over the SV !! so that would be helpful to know about the same!!&#60;/p&#62;
&#60;p&#62;Thanks,&#60;br /&#62;
Desperado --&#38;gt; Keen on Teal/Truss solutions
&#60;/p&#62;</description>
</item>
<item>
<title>digimike10 on "Building shared libary"</title>
<link>http://forums.trusster.com/topic/building-shared-libary#post-15</link>
<pubDate>Tue, 26 Jan 2010 02:02:02 +0000</pubDate>
<dc:creator>digimike10</dc:creator>
<guid isPermaLink="false">15@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Error messages when using truss &#34;./truss --simulator NCSIM --test alu_test&#34;:&#60;/p&#62;
&#60;p&#62;gcc:/home/michael/truss/src/truss_verification_top.o: No such file or directory&#60;br /&#62;
gcc:/home/michael/truss/src/truss_watchdog.o: No such file or directory&#60;br /&#62;
gcc:/home/michael/russ/examples/block_uart/verification/tests/alu_test.o: No such file or directory&#60;br /&#62;
...&#60;/p&#62;
&#60;p&#62;Could you please advice?&#60;/p&#62;
&#60;p&#62;-M
&#60;/p&#62;</description>
</item>
<item>
<title>jagan on "error while compiling teal"</title>
<link>http://forums.trusster.com/topic/error-while-compiling-teal#post-14</link>
<pubDate>Thu, 07 Jan 2010 14:41:20 +0000</pubDate>
<dc:creator>jagan</dc:creator>
<guid isPermaLink="false">14@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Mike&#60;br /&#62;
I got the same error and and now I get the following error when compiling after making the change you suggested ((uint32)aval_start_ to (size_t)aval_start_) in teal_memory.cpp&#60;/p&#62;
&#60;p&#62;In file included from ./teal.h:137,&#60;br /&#62;
                 from ./teal_memory.cpp:32:&#60;br /&#62;
./teal_reg.h:95: warning: ‘typedef’ was ignored in this declaration&#60;br /&#62;
./teal_memory.cpp: In constructor ‘regular_memory_bank::regular_memory_bank(const std::string&#38;amp;)’:&#60;br /&#62;
./teal_memory.cpp:364: error: ambiguous overload for ‘operator&#38;lt;&#38;lt;’ in ‘((teal::vout*)((teal::vout*)((teal::vout*)((teal::vout*)((teal::vout*)((teal::vout*)teal::operator&#38;lt;&#38;lt; [with TP1 = const std::string&#38;amp;, TP2 = std::pair&#38;lt;int, int&#38;gt;](((teal::vout&#38;amp;)(&#38;amp;&#38;lt;unnamed&#38;gt;::local_log)), ((const teal::vmanip&#38;lt;const std::string&#38;amp;, std::pair&#38;lt;int, int&#38;gt; &#38;gt;&#38;amp;)((const teal::vmanip&#38;lt;const std::string&#38;amp;, std::pair&#38;lt;int, int&#38;gt; &#38;gt;*)(&#38;amp; teal::mark_start(((const std::string&#38;amp;)(&#38;amp; std::basic_string&#38;lt;char, std::char_traits&#38;lt;char&#38;gt;, std::allocator&#38;lt;char&#38;gt; &#38;gt;(((const char*)&#34;./teal_memory.cpp&#34;), ((const std::allocator&#38;lt;char&#38;gt;&#38;amp;)((const std::allocator&#38;lt;char&#38;gt;*)(&#38;amp; std::allocator&#38;lt;char&#38;gt;())))))), std::pair&#38;lt;int, int&#38;gt;(((const int&#38;amp;)((const int*)(&#38;amp;2055))), ((const int&#38;amp;)((const int*)(&#38;amp;363))))))))))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(((const std::string&#38;amp;)(&#38;amp; std::basic_string&#38;lt;char, std::char_traits&#38;lt;char&#38;gt;, std::allocator&#38;lt;char&#38;gt; &#38;gt;(((const char*)&#34;Memory ctor: bytes_per_group_ &#34;), ((const std::allocator&#38;lt;char&#38;gt;&#38;amp;)((const std::allocator&#38;lt;char&#38;gt;*)(&#38;amp; std::allocator&#38;lt;char&#38;gt;()))))))))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(((regular_memory_bank*)this)-&#38;gt;regular_memory_bank::bytes_per_group_))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(((const std::string&#38;amp;)(&#38;amp; std::basic_string&#38;lt;char, std::char_traits&#38;lt;char&#38;gt;, std::allocator&#38;lt;char&#38;gt; &#38;gt;(((const char*)&#34; bit_length_ : &#34;), ((const std::allocator&#38;lt;char&#38;gt;&#38;amp;)((const std::allocator&#38;lt;char&#38;gt;*)(&#38;amp; std::allocator&#38;lt;char&#38;gt;()))))))))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(((regular_memory_bank*)this)-&#38;gt;regular_memory_bank::bit_length_))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(teal::hex))-&#38;gt;teal::vout::operator&#38;lt;&#38;lt;(((const std::string&#38;amp;)(&#38;amp; std::basic_string&#38;lt;char, std::char_traits&#38;lt;char&#38;gt;, std::allocator&#38;lt;char&#38;gt; &#38;gt;(((const char*)&#34; aval_start: &#34;), ((const std::allocator&#38;lt;char&#38;gt;&#38;amp;)((const std::allocator&#38;lt;char&#38;gt;*)(&#38;amp; std::allocator&#38;lt;char&#38;gt;()))))))) &#38;lt;&#38;lt; (size_t)((regular_memory_bank*)this)-&#38;gt;regular_memory_bank::aval_start_’&#60;br /&#62;
./teal_vout.h:131: note: candidates are: virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(char)&#60;br /&#62;
./teal_vout.h:132: note:                 virtual teal::vout&#38;amp; teal::vout::operator&#38;lt;&#38;lt;(int)&#60;/p&#62;
&#60;p&#62;What can I do to get over this error. Also, do you have a different version/download for 64bit machines.?&#60;/p&#62;
&#60;p&#62;Thanks
&#60;/p&#62;</description>
</item>
<item>
<title>moogyd on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-13</link>
<pubDate>Tue, 05 Jan 2010 11:52:38 +0000</pubDate>
<dc:creator>moogyd</dc:creator>
<guid isPermaLink="false">13@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;I'm not a C++ expert, but this problem can be fixed by editing the Makefiles to add the --friend_injection option gcc.&#60;/p&#62;
&#60;p&#62;Let me know if you manage to get everything running under Fodora - I am at a deadend under Ubuntu :-()&#60;/p&#62;
&#60;p&#62;Steven
&#60;/p&#62;</description>
</item>
<item>
<title>shakthimaan on "Teal build error Fedora"</title>
<link>http://forums.trusster.com/topic/teal-build-error-fedora#post-12</link>
<pubDate>Wed, 30 Dec 2009 02:46:34 +0000</pubDate>
<dc:creator>shakthimaan</dc:creator>
<guid isPermaLink="false">12@http://forums.trusster.com/</guid>
<description>&#60;p&#62;I am trying to build Teal (teal_1_40b.tar.gz) on Fedora 12 using gcc 4.4.2:&#60;/p&#62;
&#60;p&#62;$ export SIMULATOR_HOME=/usr&#60;/p&#62;
&#60;p&#62;$ ARCH=Linux make SIM=ivl&#60;br /&#62;
gcc -c -fPIC ./teal_reg.cpp -o ./teal_reg.o -Wall      -Dvpi_2_0 -DSIM=ivl -Divl -I. -I/usr/include -I/usr/pli_incs -I/usr/pli/interface&#60;br /&#62;
In file included from ./teal.h:136,&#60;br /&#62;
                 from ./teal_reg.cpp:32:&#60;br /&#62;
./teal_vout.h:149: warning: ‘typedef’ was ignored in this declaration&#60;br /&#62;
In file included from ./teal.h:137,&#60;br /&#62;
                 from ./teal_reg.cpp:32:&#60;br /&#62;
./teal_reg.h:95: warning: ‘typedef’ was ignored in this declaration&#60;br /&#62;
./teal_reg.cpp:391: error: ‘bool teal::operator==(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’&#60;br /&#62;
./teal_reg.cpp:398: error: ‘teal::reg::four_state teal::triple_equal(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’&#60;br /&#62;
./teal_reg.cpp:428: error: ‘teal::reg::four_state teal::operator&#38;lt;(const teal::reg&#38;amp;, const teal::reg&#38;amp;)’ should have been declared inside ‘teal’&#60;br /&#62;
make: *** [teal_reg.o] Error 1&#60;/p&#62;
&#60;p&#62;Has anyone been able to successfully build Teal on *nix? Please let me know how to proceed.
&#60;/p&#62;</description>
</item>
<item>
<title>moogyd on "Crash: Ubuntu/Icarus/GCC ?"</title>
<link>http://forums.trusster.com/topic/crash-ubuntuicarusgcc#post-11</link>
<pubDate>Sat, 19 Dec 2009 12:10:31 +0000</pubDate>
<dc:creator>moogyd</dc:creator>
<guid isPermaLink="false">11@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;I am running on Ubuntu 8.04.&#60;br /&#62;
I don't know where the problem is, but when I try to run the examples (e.g. alu_test), I get a &#34;crash&#34;&#60;/p&#62;
&#60;p&#62;Running Simulation&#60;br /&#62;
resultfile /home/stevend/work/teal_truss/examples/alu/results/alu_test_1_results.log&#60;br /&#62;
*** glibc detected *** vvp: free(): invalid pointer: 0x080e57f8 ***&#60;br /&#62;
======= Backtrace: =========&#60;br /&#62;
/lib/tls/i686/cmov/libc.so.6[0xb7d02a85]&#60;br /&#62;
/lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7d064f0]&#60;br /&#62;
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0xb7bcbb11]&#60;br /&#62;
/usr/lib/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1d)[0xb7ba779d]&#60;br /&#62;
/usr/lib/libstdc++.so.6(_ZNSsD1Ev+0x51)[0xb7ba9571]&#60;br /&#62;
hdl/alu_test.ivl.so(_Z18teal_scan_plusargsRKSs+0x20f)[0xb7c6e4d1]&#60;br /&#62;
hdl/alu_test.ivl.so(_ZN4teal10dictionary4findERKSs+0x25)[0xb7c6e5a3]&#60;br /&#62;
hdl/alu_test.ivl.so(_ZN4teal10dictionary4findIjEET_RKSsS2_+0x2e)[0xb7c65d08]&#60;br /&#62;
hdl/alu_test.ivl.so(_ZN4teal4voutC1ERKSs+0x53)[0xb7c60887]&#60;br /&#62;
hdl/alu_test.ivl.so[0xb7c6c210]&#60;br /&#62;
hdl/alu_test.ivl.so[0xb7c6c2a0]&#60;br /&#62;
hdl/alu_test.ivl.so[0xb7c821e5]&#60;br /&#62;
hdl/alu_test.ivl.so[0xb7c382e4]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7ef99d0]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7ef9b03]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7efd7b4]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7ef9606]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7efcf8e]&#60;br /&#62;
/lib/tls/i686/cmov/libdl.so.2[0xb7ed1c19]&#60;br /&#62;
/lib/ld-linux.so.2[0xb7ef9606]&#60;br /&#62;
/lib/tls/i686/cmov/libdl.so.2[0xb7ed22bc]&#60;br /&#62;
/lib/tls/i686/cmov/libdl.so.2(dlopen+0x41)[0xb7ed1b51]&#60;br /&#62;
vvp(_Z16vpip_load_modulePKc+0xb7)[0x80793d7]&#60;br /&#62;
vvp(main+0x490)[0x8057dd0]&#60;br /&#62;
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0)[0xb7cad450]&#60;br /&#62;
vvp(__gxx_personality_v0+0x41d)[0x8057781]&#60;br /&#62;
======= Memory map: ========&#60;br /&#62;
08048000-08099000 r-xp 00000000 08:01 1196961    /usr/local/bin/vvp&#60;br /&#62;
08099000-0809a000 rw-p 00051000 08:01 1196961    /usr/local/bin/vvp&#60;br /&#62;
0809a000-080f1000 rw-p 0809a000 00:00 0          [heap]&#60;br /&#62;
b7900000-b7921000 rw-p b7900000 00:00 0&#60;br /&#62;
b7921000-b7a00000 ---p b7921000 00:00 0&#60;br /&#62;
b7afc000-b7b10000 r-xp 00000000 08:01 184662     /lib/tls/i686/cmov/libpthread-2.7.so&#60;br /&#62;
b7b10000-b7b12000 rw-p 00013000 08:01 184662     /lib/tls/i686/cmov/libpthread-2.7.so&#60;br /&#62;
b7b12000-b7b14000 rw-p b7b12000 00:00 0&#60;br /&#62;
b7b14000-b7bfc000 r-xp 00000000 08:01 752761     /usr/lib/libstdc++.so.6.0.9&#60;br /&#62;
b7bfc000-b7bff000 r--p 000e8000 08:01 752761     /usr/lib/libstdc++.so.6.0.9&#60;br /&#62;
b7bff000-b7c01000 rw-p 000eb000 08:01 752761     /usr/lib/libstdc++.so.6.0.9&#60;br /&#62;
b7c01000-b7c07000 rw-p b7c01000 00:00 0&#60;br /&#62;
b7c07000-b7c93000 r-xp 00000000 08:01 408811     /home/stevend/work/teal_truss/examples/alu/results/hdl/alu_test.ivl.so&#60;br /&#62;
b7c93000-b7c96000 rw-p 0008c000 08:01 408811     /home/stevend/work/teal_truss/examples/alu/results/hdl/alu_test.ivl.so&#60;br /&#62;
b7c96000-b7c97000 rw-p b7c96000 00:00 0&#60;br /&#62;
b7c97000-b7de0000 r-xp 00000000 08:01 184624     /lib/tls/i686/cmov/libc-2.7.so&#60;br /&#62;
b7de0000-b7de1000 r--p 00149000 08:01 184624     /lib/tls/i686/cmov/libc-2.7.so&#60;br /&#62;
b7de1000-b7de3000 rw-p 0014a000 08:01 184624     /lib/tls/i686/cmov/libc-2.7.so&#60;br /&#62;
b7de3000-b7de6000 rw-p b7de3000 00:00 0&#60;br /&#62;
b7de6000-b7df0000 r-xp 00000000 08:01 184186     /lib/libgcc_s.so.1&#60;br /&#62;
b7df0000-b7df1000 rw-p 0000a000 08:01 184186     /lib/libgcc_s.so.1&#60;br /&#62;
b7df1000-b7e14000 r-xp 00000000 08:01 184636     /lib/tls/i686/cmov/libm-2.7.so&#60;br /&#62;
b7e14000-b7e16000 rw-p 00023000 08:01 184636     /lib/tls/i686/cmov/libm-2.7.so&#60;br /&#62;
b7e16000-b7e17000 rw-p b7e16000 00:00 0&#60;br /&#62;
b7e17000-b7ec7000 r-xp 00000000 08:01 752569     /usr/lib/libstdc++.so.5.0.7&#60;br /&#62;
b7ec7000-b7ecc000 rw-p 000af000 08:01 752569     /usr/lib/libstdc++.so.5.0.7&#60;br /&#62;
b7ecc000-b7ed1000 rw-p b7ecc000 00:00 0&#60;br /&#62;
b7ed1000-b7ed3000 r-xp 00000000 08:01 184631     /lib/tls/i686/cmov/libdl-2.7.so&#60;br /&#62;
b7ed3000-b7ed5000 rw-p 00001000 08:01 184631     /lib/tls/i686/cmov/libdl-2.7.so&#60;br /&#62;
b7ee9000-b7eeb000 rw-p b7ee9000 00:00 0&#60;br /&#62;
b7eeb000-b7eec000 r-xp b7eeb000 00:00 0          [vdso]&#60;br /&#62;
b7eec000-b7f06000 r-xp 00000000 08:01 184320     /lib/ld-2.7.so&#60;br /&#62;
b7f06000-b7f08000 rw-p 00019000 08:01 184320     /lib/ld-2.7.so&#60;br /&#62;
bf889000-bf89e000 rw-p bffeb000 00:00 0          [stack]&#60;br /&#62;
Aborted&#60;br /&#62;
System call failed at ../truss/bin/truss line 461&#60;br /&#62;
	main::truss_system('cd /home/stevend/work/teal_truss/examples/alu/results; vvp -m...') called at ../truss/bin/truss line 384&#60;/p&#62;
&#60;p&#62;Other Information:&#60;/p&#62;
&#60;p&#62;gcc -v&#60;br /&#62;
Using built-in specs.&#60;br /&#62;
Target: i486-linux-gnu&#60;br /&#62;
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=-4.2 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu&#60;br /&#62;
Thread model: posix&#60;br /&#62;
gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu4)&#60;br /&#62;
VM:~/work/teal_truss/examples&#38;gt; iverilog -V&#60;br /&#62;
Icarus Verilog version 0.8 ($Name: s20050617 $)&#60;/p&#62;
&#60;p&#62;I assume it's not directly a problem with Teal/Truss, but more to do with my environment (I have also tried with gcc-3.3 with the same results)&#60;/p&#62;
&#60;p&#62;Any ideas?&#60;/p&#62;
&#60;p&#62;Thanks,&#60;/p&#62;
&#60;p&#62;Steven
&#60;/p&#62;</description>
</item>
<item>
<title>amitbaran on "error while compiling teal in icarus verilog"</title>
<link>http://forums.trusster.com/topic/error-while-compiling-teal-in-icarus-verilog#post-10</link>
<pubDate>Mon, 16 Nov 2009 14:31:16 +0000</pubDate>
<dc:creator>amitbaran</dc:creator>
<guid isPermaLink="false">10@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi,&#60;br /&#62;
    I used icarus verilog to test the teal library but I got the following error, can you please help me to solve this. I am using the instructions written on the teal user guide.&#60;/p&#62;
&#60;p&#62;In file included from ../teal.h:137,&#60;br /&#62;
                 from ./reg_test.cpp:37:&#60;br /&#62;
../teal_vout.h:149: warning: ‘typedef’ was ignored in this declaration&#60;br /&#62;
In file included from ../teal.h:138,&#60;br /&#62;
                 from ./reg_test.cpp:37:&#60;br /&#62;
../teal_reg.h:95: warning: ‘typedef’ was ignored in this declaration&#60;br /&#62;
make: *** No rule to make target &#60;code&#62;../libteal.ivl.a&#38;#39;, needed by&#60;/code&#62;reg_test.ivl.so'.  Stop.
&#60;/p&#62;</description>
</item>
<item>
<title>Robert Ekendahl on "error occurs when running Teal sv in Questasim6.5c"</title>
<link>http://forums.trusster.com/topic/error-occurs-when-running-teal-sv-in-questasim65c#post-9</link>
<pubDate>Thu, 08 Oct 2009 08:42:06 +0000</pubDate>
<dc:creator>Robert Ekendahl</dc:creator>
<guid isPermaLink="false">9@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Cool,&#60;/p&#62;
&#60;p&#62;I'm glad that it's working. We also found that our code was working up to 6.4 with MTI and this is an issue we have been going back and forth with them on. They are probably the closest to the LRM, but the LRM is bad and many standard coding practices cannot be used if you follow the LRM. VCS and others choose to ignore the LRM. Not sure that is good either. &#60;/p&#62;
&#60;p&#62;This is why I think our C++ solutions is far superior. You get a mature language with tons of more features then SV and you don't have to go through all of these hoops to make it work across simulators.&#60;/p&#62;
&#60;p&#62;Our C++ solution also avoids the pitfall that SystemC and it's templating mess.&#60;/p&#62;
&#60;p&#62;That all said, we have an exiting solution in the works where we merge Teal/Truss with SystemC. Hiding most of the ugliness of SystemC and allowing verification to be more efficient while still connecting in other SystemC IP blocks. I hope Mike will be ready to show this soon.
&#60;/p&#62;</description>
</item>
<item>
<title>hanibian on "error occurs when running Teal sv in Questasim6.5c"</title>
<link>http://forums.trusster.com/topic/error-occurs-when-running-teal-sv-in-questasim65c#post-8</link>
<pubDate>Wed, 07 Oct 2009 22:31:02 +0000</pubDate>
<dc:creator>hanibian</dc:creator>
<guid isPermaLink="false">8@http://forums.trusster.com/</guid>
<description>&#60;p&#62;Hi Mike and Robert, &#60;/p&#62;
&#60;p&#62;Thanks for your both replies. I can proceed the simulation after removing &#34;= 0&#34;, although there are still some warnings.&#60;/p&#62;
&#60;p&#62;Yes, sv is still under developing and not all the features are supported by EDA vendors, even some features have been interpretated differently by different vendors, or by the same vendor in its different S/W versions. Anyway I believed this is not an error of Teal, since I ran it on VCS-2008.x and there's no warnings or errors.&#60;/p&#62;
&#60;p&#62;Thanks again for your efforts.&#60;/p&#62;
&#60;p&#62;Best regards,&#60;br /&#62;
Hanibian
&#60;/p&#62;</description>
</item>

</channel>
</rss>
