// Purpose: String-related benchmarks
// Author: Vadim Zeitlin
// Created: 2008-07-19
-// RCS-ID: $Id$
// Copyright: (c) 2008 Vadim Zeitlin <vadim@wxwidgets.org>
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#include "bench.h"
+#include "wx/tls.h"
+
#if defined(__UNIX__)
#define HAVE_PTHREAD
#include <pthread.h>
// uncomment this to also test Boost version (you will also need to link with
// libboost_threads)
-#define HAVE_BOOST_THREAD
+//#define HAVE_BOOST_THREAD
#ifdef HAVE_BOOST_THREAD
#include <boost/thread/tss.hpp>
#endif
}
#endif // HAVE_BOOST_THREAD
+
+BENCHMARK_FUNC(wxTLS)
+{
+ static wxTLS_TYPE(int) s_globalVar;
+ #define s_global wxTLS_VALUE(s_globalVar)
+
+ for ( int n = 0; n < NUM_ITER; n++ )
+ {
+ if ( n % 2 )
+ s_global = 0;
+ else
+ s_global = n;
+ }
+
+ return !s_global;
+}