summaryrefslogtreecommitdiffstats
path: root/apps/speed.c
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-02-14 15:37:38 +0000
committerRichard Levitte <levitte@openssl.org>2002-02-14 15:37:38 +0000
commit3e83e686ba2e21a2d7d991446bc6fedde5ff58c0 (patch)
treed8330c1735352c6b85a98a49ef79c97dbd096290 /apps/speed.c
parent8f06b003736c957c6e693d3b5dd1393f91a530cd (diff)
Add the configuration target VxWorks.
Diffstat (limited to 'apps/speed.c')
-rw-r--r--apps/speed.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/apps/speed.c b/apps/speed.c
index 1d62c8b87a..5e53668025 100644
--- a/apps/speed.c
+++ b/apps/speed.c
@@ -89,10 +89,10 @@
#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(OPENSSL_SYS_MACOSX)
# define USE_TOD
-#elif !defined(OPENSSL_SYS_MSDOS) && (!defined(OPENSSL_SYS_VMS) || defined(__DECC))
+#elif !defined(OPENSSL_SYS_MSDOS) && !defined(OPENSSL_SYS_VXWORKS) && (!defined(OPENSSL_SYS_VMS) || defined(__DECC))
# define TIMES
#endif
-#if !defined(_UNICOS) && !defined(__OpenBSD__) && !defined(sgi) && !defined(__FreeBSD__) && !(defined(__bsdi) || defined(__bsdi__)) && !defined(_AIX) && !defined(OPENSSL_SYS_MPE) && !defined(__NetBSD__) /* FIXME */
+#if !defined(_UNICOS) && !defined(__OpenBSD__) && !defined(sgi) && !defined(__FreeBSD__) && !(defined(__bsdi) || defined(__bsdi__)) && !defined(_AIX) && !defined(OPENSSL_SYS_MPE) && !defined(__NetBSD__) && !defined(OPENSSL_SYS_VXWORKS) /* FIXME */
# define TIMEB
#endif
@@ -120,7 +120,7 @@
#include <sys/timeb.h>
#endif
-#if !defined(TIMES) && !defined(TIMEB) && !defined(USE_TOD)
+#if !defined(TIMES) && !defined(TIMEB) && !defined(USE_TOD) && !defined(OPENSSL_SYS_VXWORKS)
#error "It seems neither struct tms nor struct timeb is supported in this platform!"
#endif
@@ -326,7 +326,23 @@ static double Time_F(int s)
# if defined(TIMES) && defined(TIMEB)
else
# endif
-# ifdef TIMEB
+# ifdef OPENSSL_SYS_VXWORKS
+ {
+ static unsigned long tick_start, tick_end;
+
+ if( s == START )
+ {
+ tick_start = tickGet();
+ return 0;
+ }
+ else
+ {
+ tick_end = tickGet();
+ ret = (double)(tick_end - tick_start) / (double)sysClkRateGet();
+ return((ret < 0.001)?0.001:ret);
+ }
+ }
+# elif defined(TIMEB)
{
static struct timeb tstart,tend;
long i;