summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorFelix Yen <fwy@alumni.brown.edu>2004-03-24 17:16:07 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2004-03-24 17:16:07 +0000
commitb4a76c01dbc8f3c3acff5ef3b44cc19249299a20 (patch)
tree6fc9dfaa7723bb37a2e18d170a7b080a6d22fede /libstdc++-v3
parentb5472e1d48b1ba409a8eea6fcd67a2865b1bd684 (diff)
downloadgcc-b4a76c01dbc8f3c3acff5ef3b44cc19249299a20.tar.gz
producer_consumer.cc: Use linear algorithm for producer.
2004-03-24 Felix Yen <fwy@alumni.brown.edu> * testsuite/performance/20_util/allocator/producer_consumer.cc: Use linear algorithm for producer. From-SVN: r79920
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog5
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc3
2 files changed, 7 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9a3980f6b35..73096ffc3de 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2004-03-24 Felix Yen <fwy@alumni.brown.edu>
+
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
+ Use linear algorithm for producer.
+
2004-03-24 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
diff --git a/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc
index 5295e7e1fad..4e13a5cc0b2 100644
--- a/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc
@@ -129,8 +129,9 @@ template<typename Container>
Queue<Container>::push_back(const typename Container::value_type& value)
{
AutoLock auto_lock(lock);
+ const bool signal = queue.empty();
queue.insert(queue.end(), value);
- if (queue.size() == 1) pthread_cond_signal(&condition);
+ if (signal) pthread_cond_signal(&condition);
}
template<typename Container>